Запуск тестов через терминал
Last updated
Last updated
Запуск тестов через терминал в Pytest довольно прост и позволяет вам легко управлять различными аспектами выполнения тестов. Для запуска тестов через терминал вы можете использовать команду pytest
с дополнительными параметрами и флагами в соответствии с вашими потребностями.
Вот примеры некоторых распространенных способов запуска тестов через терминал с использованием Pytest:
Запуск всех тестов в текущем каталоге:
Запуск всех тестов в указанном файле:
Запуск всех тестов в указанных файлах и каталогах:
Подробный вывод (verbose):
Запуск тестов без захвата вывода (stdout):
Запуск тестов, содержащих указанное ключевое слово в имени:
Запуск тестов, отмеченных определенным маркером:
Запуск отдельного теста:
Включение интерактивного отладчика (PDB) при ошибке:
Генерация отчета о покрытии кода тестами:
Создание отчета в формате HTML:
Список доступных флагов и помощь:
В Pytest флаги представляют собой дополнительные параметры, которые можно передать при запуске тестов с помощью командной строки. Они используются для настройки различных аспектов выполнения тестов. Вот некоторые из наиболее часто используемых флагов:
-v, --verbose: Устанавливает подробный вывод, позволяя увидеть подробную информацию о тестах, включая имена тестов, прошедшие и не прошедшие тесты.
-s, --capture=no: Отключает захват вывода (stdout), что позволяет видеть все сообщения, выводимые с помощью функции print
.
-k EXPRESSION, --keyword=EXPRESSION: Запускает только те тесты, имена которых содержат указанное ключевое слово (регулярное выражение).
-m MARKEXPR, --markers=MARKEXPR: Запускает только те тесты, которые помечены указанным маркером.
--lf, --last-failed: Запускает только тесты, которые завершились неудачей при последнем запуске.
--ff, --failed-first: Запускает сначала тесты, которые завершились неудачей при последнем запуске, а затем все остальные тесты.
--pdb: Включает интерактивный отладчик (PDB) при возникновении ошибки или отказа в тесте.
--maxfail=num: Останавливает выполнение тестов после того, как заданное количество тестов завершится неудачей.
--durations=num: Печатает список самых медленных тестов и фикстур в конце запуска тестов.
--junitxml=path: Генерирует файл XML с результатами тестов в формате JUnit XML.
--cov: Вычисляет покрытие кода тестами и выводит отчет о покрытии.
--html=path: Генерирует отчет о тестировании в формате HTML.
--help: Выводит справочную информацию о доступных флагах.
Это только некоторые из флагов, поддерживаемых Pytest. Флаги можно комбинировать для настройки выполнения тестов по вашему усмотрению, что обеспечивает гибкость и удобство при работе с тестами.