Python/Django исключает запуск тестов в подкаталоге
Я пытаюсь запустить все тесты в проекте Python из определенного каталога, но мне нужно исключить некоторые тесты из подкаталога.
Хотелось бы узнать, как исключить тесты из подкаталога.
home/
--tests/
--views/
--/viewtest1.py
--models/
--/modeltest1.py
--test1.py
Я в основном хочу запускать все под home, кроме всего, что находится в tests/view.
#Это выполнит все тесты под home, но будет включать тесты views.
./manage.py test home
EXCLUDE_DIRS из python игнорирует только каталоги верхнего уровня, но не подкаталоги. Поэтому это утверждение не работает.
EXCLUDE_DIRS=views ./manage.py test home
Если вы хотите запустить тест из подкаталога, вам следует придерживаться некоторых правил:
ваш тестовый файл должен соответствовать шаблону test_{test-name}.py.
в sub dir вы должны добавить файл __init__.py следующим образом:
home/
--tests/
--views/
__init__.py
--/viewtest1.py
--models/
__init__.py
--/modeltest1.py
__init__.py
--test1.py
примечание:
вы можете добавить тестовые файлы в ваш __init__.py следующим образом
tests/models/__init__.py
from test_models import *
# the file modeltest1.py renamed to test_models.py