Я запускаю тест так:
pytest -v testing.py --parameters=10,11,12
внутри прибора я получаю аргументы командной строки, делаю list
из string
, и мне нужно передать это list
в тест, как показано на рисунке
код
# content of conftest.py
import pytest
def pytest_addoption(parser):
parser.addoption(
"--parameters", action="store", default='10,11,12', help="help")
@pytest.fixture
def cmdopt(request):
return request.config.getoption("--parameters")
# content of testing.py
import pytest
@pytest.fixture(autouse=True)
def get_params(cmdopt):
data = cmdopt.split(',') # default ['10','11','12']
return data
@pytest.mark.parametrize('parameter', 'the list that returned the fixture get_params')
def test_mytest(parameter):
print(parameter) # I first expect 10 then 11 then 12
Как это можно реализовать? Спасибо.