@PesyCorm

Как пайтест работает с тестами в несколько потоков?

Всем привет!
Когда я попытался сделать выполнение тестов в несколько потоков с помощью pytest -n то столкнулся с несколькими проблемами:
1) Вывод логов (принтов) в терминал происходит только для упавших тестов (флаг -s указан)
2) Фикстуры области сессии (из conftest.py) срабатывают для каждого тестового потока
Возможно, есть еще какие-то особенности, которые я не успел заметить.
Подскажите, как именно работает параметр -n для пайтест? Информации об этом маловато, в доке ничего внятного не нашел (мб плохо искал)
Спасибо!
  • Вопрос задан
  • 788 просмотров
Решения вопроса 2
@conopus
QAA
Это ключ не самого pytest, а плагина pytest-xdist. Соответственно, подробности стоит искать в документации к нему: https://pytest-xdist.readthedocs.io/en/latest/
Ответ написан
@PesyCorm Автор вопроса
Из документации pytest-xdist:
1) "Из-за того, как реализован pytest-xdist, -s/--capture=no опция не работает."
2) Чтобы фикстура области сессии выполнялась один раз, можно сделать "с помощью файла блокировки для межпроцессного взаимодействия" https://pytest-xdist.readthedocs.io/en/latest/how-...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы