Задать вопрос
x__miller_x
@x__miller_x

Как запустить тесты Pytest параллельно по категориям?

Доброго дня!
Краткая предыстория проблемы:
есть куча тестов (методов), которые на данный момент сгруппированы по отдельным тест-комплектам (в виде отдельных файлов py):
*test_suite_1.py
**def test_case_1_1()
**def test_case_1_2()
...
*test_suite_2.py
**def test_case_2_1()
**def test_case_2_2()
...
Для параллельного исполнения я нашел плагин xdist.
Соответственно, при запуске pytest обходит все тесты по очереди, но параллельно при этом выполняются тесты сначала из test_suite_1.py и так далее..

Вопрос состоит в том, как можно заставить выполняться тесты параллельно по тест-комплектам (пакетам, пакам...)? Т.е., чтобы первый экземпляр браузера выполнял test_suite_1.py, второй - test_suite_2.py и так далее?

В документации xdist я не нашел (или не понял), как можно реализовать мою задачу. Может быть есть какие-то другие плагины или реализация этого способа в xdist?

PS: мой опыт в программировании и использовании pytest не так велик (=
  • Вопрос задан
  • 2204 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 1
Вот серьезно нет в офф документации?
xdist
--dist=loadscope: tests will be grouped by module for test functions and by class for test methods, then each group will be sent to an available worker, guaranteeing that all tests in a group run in the same process. This can be useful if you have expensive module-level or class-level fixtures. Currently the groupings can’t be customized, with grouping by class takes priority over grouping by module. This feature was added in version 1.19.
--dist=loadfile: tests will be grouped by file name, and then will be sent to an available worker, guaranteeing that all tests in a group run in the same worker. This feature was added in version 1.21.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
от 200 000 до 300 000 ₽
Greenway Global Новосибирск
от 150 000 ₽
Akronix Санкт-Петербург
от 150 000 до 200 000 ₽