我想要使用自定义命令行参数的方式,向 pytest 脚本传参。
首先我在 conftest.py 里通过 pytest_addoption 函数用来定义命令行的参数,country 为自定义的 fixture,用来获取从命令行传进来的参数值。
import pytest
def pytest_addoption(parser):
parser.addoption("--country", action="store", default="China",
help="set country")
@pytest.fixture()
def country(request):
return request.config.getoption("--country")
然后在 test.py 中通过 pytest.main 运行
import pytest
def test_demo(country):
print("当前所在的国家:", country)
if __name__ == '__main__':
pytest.main(["-s --country=中国"])
执行结果如下:发现自定义命令行参数未生效
请问大佬,这种问题怎么解决啊?