refactor: hierarchical test architecture (Project > Role > BP > Steps)
Реструктурированы тесты под иерархию Проект > Личный кабинет > БП > Шаги. Архитектура: - Бизнес-процесс = Python-класс, шаг = метод класса - Шаги именуются test_s01_*, test_s02_* и т.д. - БП именуются BP01_, BP02_ и т.д., каждый в своей папке Передача данных: - browser_page (scope=class) — один браузер на весь БП, авторизация 1 раз - bp_state (scope=class) — словарь для передачи данных между шагами одного БП - shared_state (scope=session) — словарь для передачи между разными БП Зависимости шагов (pytest-dependency): - Если шаг N упал, шаги N+1... получают статус SKIPPED автоматически - Имена зависимостей: BP01::s01, BP01::s02 и т.д. Изменения файлов: - tests/conftest.py: добавлены browser_page и bp_state, вынесены вспомогательные функции _get_role и _login, сохранена role_page (deprecated) для обратной совместимости - tests/01_vetdept/conftest.py: новый, содержит shared_state - tests/01_vetdept/BP01_navigation/: новая папка с тестом навигации - tests/01_vetdept/001_login_test.py: удалён (переписан в BP01) - requirements.txt: добавлен pytest-dependency - pytest.ini: добавлен маркер dependency
This commit is contained in:
@ -3,4 +3,5 @@ pytest
|
||||
pytest-playwright
|
||||
pytest-xdist
|
||||
pytest-html
|
||||
pytest-dependency
|
||||
python-dotenv
|
||||
Reference in New Issue
Block a user