Size: a a a

testing_in_python

2021 May 27

СС

Сказочный Сникерс... in testing_in_python
так же как и с любыми другими фикстурами при xdist)
источник

СС

Сказочный Сникерс... in testing_in_python
каждая исполнится столько раз сколько процессов запуска указано
источник

V

Vyacheslav in testing_in_python
Есть тест:
@pytest.mark.parametrize("par1", [3,4,9])
@pytest.mark.parametrize("par2", [True,False])
def test_example(par1,par2):
   if par2 :
       assert 3*3 ==par1
Могу сделать чтобы под подписи летело не просто true,false а комент вроде
[multi: True-3]?
idn= хочет как будто чтоб я полностью весь тест отпараметризированный обозвал
источник

V

Vyacheslav in testing_in_python
источник

СС

Сказочный Сникерс... in testing_in_python
@pytest.mark.parametrize("par1", [3,4,9])
@pytest.mark.parametrize("par2", [True,False], ids=lamda x: f’multi: {x}’)
источник

V

Vyacheslav in testing_in_python
Спасибо, круто!
источник
2021 May 28

НН

Николай Никифоров... in testing_in_python
Привет. Можно у вас анонс о мероприятии про сбор данных сделать?
источник

НН

Николай Никифоров... in testing_in_python
#анонс

Всем привет

В пятницу, 28 мая в 20-00 по Москве, мы проведём встречу с Сашей Мамаевым. Саша руководит группой саентистов в mail.ru. Наш разговор  пойдёт о Data Science: как начать, как внедрять и чем это может помочь, если у вас мало опыта или вы новичок в этой теме.

Мы ждём вас

- Встреча будет в zoom
- Ссылка будет у нас в канале за 10 минут до начала
источник

A

Alexander in testing_in_python
"Бен, это Данила, ай нид хелп". Подскажите плиз, как настроить аллюр (не против себя) под убунтой 18.04, что бы отчёты в xml сохранялись и сервак с данными, а не пустой запускался.
источник

А

Андрей in testing_in_python
источник
2021 May 29

EB

Evgenii B in testing_in_python
так вопросы не задаются. читайте документацию, скидывайте те шаги которые вы делали. описывайте проблему и ожидаемый результат в моменте, когда что-то не так, как вам хочется.
источник

V

Vyacheslav in testing_in_python
3ий пункт не хочет отпускать, что делал и наблюдения:
imaplib
https://pastebin.com/hfBCkPnV

1)Если создавать конект при каждом вызове(закоменченая строка сейчас) то без xdist многопоточности работает стабильно хорошо. Т.е если письмо сразу не пришло, ждём проверяем ещё раз, со временем находит. (поставил рисовать счётчик i сколько раз тыркнулись, какое то с первого, какое-то с четвёртой итерации находится.)
2)Если запускать с xdist то все письма что не пришли с первого раза сыпятся ошибкой
В строку с mail.fetch приходят корректные данные но fetch вытаскивает уже что то другое и сыпется всё в блоке try потому что пытается перекодировать двухзначный int вместо письма. Ещё была супер-варварская реализация на Эксепт ошибки насильно отправлять ещё раз смотртеть(закоменченый continue(на тот момент это всё было ещё просто в цикле а не во вложеной функции)), и это даже приносило некоторый результат, но по ощущениям это очень неочень.
3)Вынос соединения в фикстуру mail_connection привёл к тому что и в один поток выскакивает ошибка как при пункте 2. Первый проходит, все последующие сыпятся.

Как я понимаю проблема с тем что повторное извлечение не хочет работать, либо надо откатывать как то состояние. Либо я вообще изобретаю велосипед, и есть более простой/надёжный/рабочий способ подтверждать(брать любую инфу с почты) почту именно через хождение на ящик.
источник

IS

Idi Suda in testing_in_python
А зачем там вложенная функция? Вроде можно отдельно её ебануть
источник

СС

Сказочный Сникерс... in testing_in_python
У тебя при xdist энное количество отдельных параллельных соединений, которые могут зафетчить все данные в любой момент
источник

V

Vyacheslav in testing_in_python
Помог  понять проблему вывод того что летит для каждого отдельного воркера, фетч всех данных в любой момент это и есть причина почему прилетают другие флаги вначале? вернул фикстуру, заменил data[0][1] на data[-2][0] вроде заработало
источник

V

Vyacheslav in testing_in_python
источник

СС

Сказочный Сникерс... in testing_in_python
Скорее всего да. Юзая хдист надо всегда держать в голове что код исполняется полностью параллельно каждый на своих отдельных объектах в рамках своего процесса. Каждая фикстура отрабатывает заново, даже если она сессионная. Каждый кусок кода теста который что то забирает из какой то очереди - может забрать все и от других тестов. Итд
источник

V

Vyacheslav in testing_in_python
Ну все фикстуры со скопом >function фикшу через filelock как как в доке xdist пишут
источник

СС

Сказочный Сникерс... in testing_in_python
А в чем смысл? Ты же сильно замедляешь тесты таким образом
источник

V

Vyacheslav in testing_in_python
В данном случае не надо, а в остальных, как по другому делать так чтобы задачи которые должны были отработать 1 раз отрабатывали 1 раз, например залогинивание, база, сетапы и финализаторы
источник