Обнаружение теста Pytest в подпапках

Привет, у меня следующая архитектура проекта, я использую селен с pytest

  • Из терминала, когда я нахожусь в корневой папке, я не могу запустить тесты внутри папки "\tests"
  • Насколько вам известно, Pytest должен иметь возможность обнаруживать все тесты во вложенных папках, или я ошибаюсь?

Я использую следующую команду : (venv) C:\Users\Mike\PycharmProjects\UI_Selenium_Framework> pytest test_logib_logout.py Я получаю ОШИБКУ: файл не найден: test_login_logout.py

И когда я запускаю (venv) C:\Users\Mike\PycharmProjects\UI_Selenium_Framework> pytest, pytest обнаруживает все тесты внутри "\tests" и успешно его запускает

1 ответ

Ты должен бежать pytest tests\test_login_logout.py. Вы должны указать полный путь из текущего рабочего каталога, которыйC:\Users\Mike\PycharmProjects\UI_Selenium_Framework в твоем случае.

Обратите внимание, что вы также можете использовать модуль Python unittest: python3 -m unittest discover tests

Другой вариант - использовать '-k'

(venv) C:\Users\Mike\PycharmProjects\UI_Selenium_Framework> pytest -k test_login_logout.py

Самый простой способ - открыть терминал в папке, где хранятся файлы pytest, и запустить команду.
В вашем случае команда должна выглядеть так:

(venv) C:\Users\Mike\PycharmProjects\UI_Selenium_Framework\tests> pytest test_logib_logout.py

Вы также можете создать отчет в формате html (если у вас есть pytest-html установлен плагин), выполнив команду pytest test_logib_logout.py --html=testreport.html

Другие вопросы по тегам