Организация тестов
Зачем нужен conftest.py?
подробнее
conftest.py- это локальный плагин pytest, который автоматически подхватывается для каталога в котором лежит и для всех его подкаталогов. В нем обычно держат фикстуры, хуки, свои CLI-опции, общие для этой группы тестов настройки и прочее.
Важно отметить, что этот файл не импортируется из тестов напрямую - pytest подгружает его самостоятельно. Но в целом никто не мешает держать свои фикстуры и функции в отдельном модуле и импортировать вручную.
Структура проекта с тестами
подробнее
Пример структуры проекта с тестами
project/
├─ src/ # исходный код (опционально)
├─ tests/ # Все тесты здесь
│ ├─ smoke/
│ │ ├─ conftest.py # фикстуры/хуки для tests/smoke/
│ │ └─ test_smoke.py
│ ├─ api/
│ │ └─ test_api.py
│ ├─ test_other.py
│ └─ conftest.py # Общие фикстуры/хуки для tests/
└─ pytest.ini # Конфигурация pytest