@python_beginnersЭта группа больше не существует

Страница 953 из 1885
Solyar
19.12.2016
20:35:54
Хотя можно было бы и красивее но я пока осваиваюсь

Denis
19.12.2016
20:36:47
Ну вроде должно

Solyar
19.12.2016
20:37:06
Google
Solyar
19.12.2016
20:37:09
я глупец

Petro
19.12.2016
21:06:15
Mathematics, bitch!

Зато видишь, не зря выложил своё решение. Узнал что-то новое.

Janek
19.12.2016
21:24:45
Поясните за елду

Denis
19.12.2016
21:25:23
Ну в штанах такая штука есть

А почему вы спрашиваете?

Janek
19.12.2016
21:26:09
У вас yield видно, в курсе?

Denis
19.12.2016
21:26:38
Ну yield прерывает выполнение генератора и возвращает из него некоторое значение

Janek
19.12.2016
21:27:08
Я понял

Pavel
19.12.2016
21:31:27
есть один забавный момент, про который по-первости все забывают. >>> def foo(): ... print('before') ... i = 0 ... while i<10: ... print('inside') ... yield i ... i+=1 ... >>> >>> >>> x = foo() >>> next(x) before inside 0 >>> next(x) inside 1 >>>

b0g3r
19.12.2016
21:32:03
а какой

Pavel
19.12.2016
21:32:06
Если питон решает, что функция - генератор, то он её не выполняет, пока не начнёшь её итерировать.

b0g3r
19.12.2016
21:32:11
а, я уже подумал что я что-то не углядел)

Google
Janek
19.12.2016
21:32:57
Я вот вчера не смог вызвать просто подобную функцию

Вообще ничего не возвращало

Pavel
19.12.2016
21:33:13
Ну это ньюанс, который может потратить маленько времени при дебаге "какого хрена оно не выполняется?"

Janek
19.12.2016
21:33:27
Пока не начал итерировать

b0g3r
19.12.2016
21:34:10
Пока не начал итерировать
так это оно и есть

Janek
19.12.2016
21:34:38
Да. Но я просто игрался. Пока практического применения елду не нашел

Denis
19.12.2016
21:34:49
Почему они не могли сделать объявление генератора, например, через yield def?

b0g3r
19.12.2016
21:34:57
да(

Janek
19.12.2016
21:36:01
Для меня магия какая-то, что объявляя елд в любом месте функции, ты из нее делаешь генератор

Как-то очень неявно, что ли

Solyar
19.12.2016
21:51:58
That's the right answer! You are one gold star closer to fixing the sleigh. [Return to Day 1]

Уделал первую задачку)

Pavel
19.12.2016
21:53:05
в C# такая же петрушка c елдом.

Уделал первую задачку)
Первая задача - это там где нужно было по городу ходить?

Pavel
19.12.2016
21:54:43
Она самая
отлично, но там есть вторая часть, и ещё куча задач навалена уже.

Solyar
19.12.2016
21:54:58
Alexander
19.12.2016
22:02:15
Всем привет. Подскажите, пожалуйста, как должна выглядеть структура директорий для проекта на питоне (набор скриптов), какой фремворк для юнит тестов лучше использовать (нагуглил несколько штук, что из этого в почете, а что не нет не понял), и есть что-нибудь для интеграционного тестирования?

Alexander
19.12.2016
22:04:36
Есть еще nose, pytest

Google
Alexander
19.12.2016
22:05:01
И выглядят они как-то одинаково

Есть среди них что-то вроде JUnit в джава?

Pavel
19.12.2016
22:06:09
про nose одно могу сказать: Warning nose itself supports python 3, but many 3rd-party plugins do not!.

Alexander
19.12.2016
22:06:33
Спасибо

Pavel
19.12.2016
22:07:06
py.test знатно расширяет возможности юнит-тестирования, но для начала unittest хватит за глаза.

Alexander
19.12.2016
22:08:32
А есть какие-нибудь тулзы/фреймворки для интеграционного тестирования?

Solyar
19.12.2016
23:37:45
Ребят не подскажите как поступить? Есть три переменные n1,n2,n3 как-нибудь можно вызвать их используя вместо цифры значение другой переменной скажем y

Решил вопрос

Сергей
19.12.2016
23:44:22
Как

?

В y запихнул эти переменные? Массив?

Solyar
19.12.2016
23:58:32
Сделал массив и запихнул туда переменные!

В y запихнул эти переменные? Массив?
Парюсь над второй задачкой с сайта из шапки!

Но пожалуй на сегодня хватит, пойду посплю, а завтра со свежей головой приложусь

Pavel
20.12.2016
00:11:39
Хотел бы я знать, где там три переменных. Или четыре, или две, но три...

53r63rn4r
20.12.2016
00:58:51
Вот кстати хз как полностью покрывать код тестами, юзал только ассертЕквал, все

Артем
20.12.2016
06:04:47
Ну я еще юзал ассертКонтенс(), это когда ты проверяешь что например в респонсе есть что, что ты тестишь

53r63rn4r
20.12.2016
06:06:41
А хз как нужно писать правильно тесты и юзать еще больше..

Но хотелось бы

Google
Артем
20.12.2016
06:08:59
Да я в общем ассертЕквал и ассертКонтенс знаю а дальше хз

Dmitriy
20.12.2016
06:11:12
Если метод возвращает разные типы данных, то еще assertIs или assertIsInstance юзать желательно

В самих тестах приводить результат к другим различным типам не желательно

Артем
20.12.2016
06:14:03
Ну вот есть же подход программирования сначала тесты потом уже код, ну это скорее не для бегинеров подход разработки

Dmitriy
20.12.2016
06:14:58
TDD, BDD

Артем
20.12.2016
06:16:20
Это когда ты ебешься над тестами а тебе надо писать код, я так понимаю этот подход

Admin
ERROR: S client not available

Cykooz
20.12.2016
06:18:23
Это когда ты ебешься над тестами а тебе надо писать код, я так понимаю этот подход
Это когда тебе не надо ебаться со старым кодом в поисках ошибки, после того как добавил новую фичу или сделал рефакториг. ?

А порядок написания теста и кода - это по большей части индивидуальные особености

Мне вот проще проектировать систему сразу реализуя это в коде, поэтому у меня тесты обычно пишутся после того как будет хоть какой то работающий кусок кода. Иначе я просто не знаю что тестировать поскольку ещё не придумал архитектуру, API и д.р.

Кому то может удобнее сначала "на бумажке" придумать всё, и уже дальше следовать "плану" при написании кода. Вот тогда можно сразу нафигачить тестов.

Dmitriy
20.12.2016
06:25:07
На своих небольших домашних проектах тесты может и пишутся в самый последний момент

На больших же проектах их нужно как можно быстрее реализовать, потому как чем раньше тестирование началось тем оно дешевле в будущем

Как в прочем и дешевле обновление самого проекта в целом

Артем
20.12.2016
06:26:22
Просто еще вопрос а что именно тестить в коде...

Cykooz
20.12.2016
06:26:29
Ну не обязательно в последний момент писать тесты - обычно это как то перемешано. Написал одну функцию - запилил для неё тесты, написал следующую - потом для неё тесты.

Dmitriy
20.12.2016
06:26:50
Различные юзкейсы

Чтобы данный функиционал отрабатывал нормально в обычных ситуациях и экстремальных

Cykooz
20.12.2016
06:28:23
Ага, самое простое - это имитировать бурную деятельность пользователя, такие кейсы как правило лежат на поверхности.

Google
53r63rn4r
20.12.2016
06:34:49
Вот вот

Хотелось бы узнать бест практик от кьюа

Жаль что тут нет питон кьюа в чате

Dmitriy
20.12.2016
06:35:52
Ага, жаль

Cykooz
20.12.2016
06:40:38
Жаль что тут нет питон кьюа в чате
Обычно тесты пишет сам программист а не отдельный QA. Отдельные QA чаще всего тестируют уже готовый продукт с точки зрения пользователя.

Dmitriy
20.12.2016
06:41:16
Есть такой подвид - инжинер по автоматизации тестирования

По сути это тот же разработчик, только тестов

На практике встречаются различные гибриды, с различным списком обязанностей, все зависит от проекта

Cykooz
20.12.2016
06:46:56
Мне кажется полное разделение на кодера и тестера - это какой то неудачный перенос практик из других отраслей. Если кодер будет без проверки херачить код и отдавать его тестеру - то это будут большие накладные задержки. Пока тестер разберётся, что там кодер понаписал, потом он тесты напишет, они поломаются и он запилит тикет на кодера, который уже херачит другую фичу...

Cykooz
20.12.2016
06:48:29
Я вот например пишу бекенд с REST-API, и я без тестов даже не смогу узнать работает оно или нет. А потому тесты пишу все сам. QA у нас выступают последней линией обороны - тестируют уже развёрнутый на стенде бекенд.

Dmitriy
20.12.2016
06:48:45
Зависит еще от цвета ящика

Cykooz
20.12.2016
06:50:32
В плане разделения типов тестов у нас получается наверное только чётко выделеные интеграционые тесты, которые посути делают QA. А то что я пишу, там вообще дикая смесь, и сложно определить какой тест: юнит, функциональный или ещё чего.

Yan?
20.12.2016
07:00:52
я как-то не в тыкаюсь тему properties. Как я понял, @property работает как патернн декоратор, кустомизирую доступ к атрибутам инстанса. Но как ими заменить геттеры и сеттеры?

Cykooz
20.12.2016
07:04:07
Ну и почитай про дексрипторы в питоне (на них и основаны property) https://habrahabr.ru/post/122082/

Страница 953 из 1885

Эта группа больше не существует Эта группа больше не существует