Учебники

UnitTest Framework — тестовое обнаружение

Класс TestLoader имеет функцию Discover (). Среда тестирования Python использует это для простого обнаружения тестов. Чтобы быть совместимыми, модули и пакеты, содержащие тесты, должны импортироваться из каталога верхнего уровня.

Ниже приведено основное использование командной строки для обнаружения тестов:

Python –m unittest discover

Интерпретатор пытается рекурсивно загрузить все модули, содержащие тест, из текущего каталога и внутренних каталогов. Другие параметры командной строки:

Sr.No. Варианты и описание
1

-v, —verbose

Подробный вывод

2

-s, —start-каталог

каталог Каталог для запуска обнаружения (. по умолчанию)

3

-p, —pattern

pattern Шаблон для соответствия тестовым файлам (test * .py по умолчанию)

4

-t, —top-level-directory

каталог Каталог верхнего уровня проекта (по умолчанию — начальный каталог)

-v, —verbose

Подробный вывод

-s, —start-каталог

каталог Каталог для запуска обнаружения (. по умолчанию)

-p, —pattern

pattern Шаблон для соответствия тестовым файлам (test * .py по умолчанию)

-t, —top-level-directory

каталог Каталог верхнего уровня проекта (по умолчанию — начальный каталог)

Например, чтобы обнаружить тесты в модулях, имена которых начинаются с «assert» в каталоге «tests», используется следующая командная строка:

C:\python27>python –m unittest –v –s "c:\test" –p "assert*.py"

Обнаружение тестов загружает тесты, импортируя их. Как только тестовое обнаружение обнаружит все тестовые файлы из указанного вами начального каталога, он преобразует пути в имена пакетов для импорта.

Если вы указали стартовый каталог в качестве имени пакета, а не пути к каталогу, то обнаружение предполагает, что из любого места, из которого он импортируется, находится местоположение, которое вы наметили, поэтому вы не получите предупреждение.