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 не так велик (=
  • Вопрос задан
  • 1889 просмотров
Решения вопроса 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.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы