У меня есть флаги OPT, которые я хочу разрешить, только если сеанс pytest не покрывает все мои тесты на уровне базового пакета тестирования.
Я использую прибор для установки флагов OPT командной строки:
def pytest_addoption(parser):
parser.addoption("--env", action="store", default="not_production")
Они организованы следующим образом:
/ тесты
|__init__.py
|__tests_dir_A
|__init__.py
|__testAA.py
|__testAB.py
|__testAC.py
|__testAD.py
|__tests_dir_B
|__init__.py
|__testBA.py
|__testBB.py
|__testBC.py
|__testBD.py
|__tests_dir_C
|__init__.py
|__testCA.py
|__testCB.py
|__testCC.py
|__testCD.py
|__tests_dir_D
|__init__.py
|__testDA.py
|__testDB.py
|__testDC.py
|__testDD.py
В зависимости от варианта использования я бы хотел, чтобы тестовый исполнитель мог использовать дополнительные пользовательские настройки. OPT флаг. Например, если у меня 16 классов тестов и я запускаю pytest из каталога базовых тестов, я не хочу, чтобы флаг OPT был действительным. Однако, если я запускаю pytest на уровне пакета (tests_dir_A) или на уровне модуля / класса (то есть testAA.py), я хотел бы иметь возможность указать дополнительный файл конфигурации через флаг OPT. Как бы я это настроил? Это обычный вариант использования?