щас будет тупой вопрос по pytest
Что имеем :
N девайсов, подключенных к PC
Y тестов
M параметров на тест
Что хочется сделать:
передавать cli аргументом id девайса. если такой есть в конфиге — выполняем тесты только на этом девайсе. Если девайс не передали — то тесты выполняются на всем пуле девайсов, т.е. фактически переданный девайс работает как фильтр.
В чем проблема:
в function-scope фикстуре у меня просто такой псевдокод:
@pytest.fixture(scope='function')
def driver_setup(capabilities_fixture)
driver = Remote(capabilities=capabilities_fixture)
yield driver
driver.close()
до вызова func-scope фикстуры на всю сессию хочется параметризовать тест, т.е. до
@pytest.mark.parametrize('a, b', params=[('evgen', 'pelmen')]
def test_login(a, b):
assert a != b
уже должно быть напараметризовано по всем девайсам
pytest позволяет указать 2 строчки с parametrize, тогда все сочетания будут перемножены, но как в таком случае получить данные для параметризации, которые получаются с командной строчки?