Как запустить все Python юнит-тесты в директории?

Можно ли запустить все юнит-тесты в директории одной командой (стандартный модуль unittest)?

test/
    test_mytest1.py
    test_mytest2.py

Ответы (1 шт):

Автор решения: DWolf_19

Для этого применяется сабкоманда discover:

python -m unittest discover <directory>

Также есть флаг -p, --pattern - "Pattern to match test files", по умолчанию test*.py:

python -m unittest discover -s <directory> -p "test*.py"

Запуск необязательно производить в самой директории с тестами (.py файлами) - каталоги и подкаталоги, содержащие тесты, могут быть пакетами, имеющими __init__.py файл, поиск будет совершён рекурсивно.

→ Ссылка