gpt4 book ai didi

python - 无法从 pytest.fixture 获取数据,而是获取数据位置

转载 作者:太空宇宙 更新时间:2023-11-03 21:21:33 25 4
gpt4 key购买 nike

我正在 pytest 中进行测试。这是我的代码

文件1.py

def pytest_addoption(parser):
parser.addoption('--uid')

@pytest.fixture
def login_id(request,pytestconfig):
user_id = pytestconfig.getoption('--uid')

return user_id

它的作用是在 pytest 中获取 cli 参数

文件2.py

@pytest.fixture 
def func():
login(login_id)
return session()

当我在需要创建 session 的模块上执行测试时,login_id 给我的数据为

< function login_id at 0x00000000092F79D8>

我无法获取此数据,如何获取我在 cli 参数中传递的值。

我使用的是pycharm,python3.5。

cli 参数为 --uid 用户名

我没有在login功能中获取用户名,而是获取数据的位置。

感谢和问候

最佳答案

如果您想在另一个灯具中使用一个灯具的值,只需将其作为参数传递即可:

@pytest.fixture
def login_id(request):
...
return ...

@pytest.fixture
def func(login_id):
login(login_id)
return session()

建议:您不需要 pytestconfig 固定装置,因为您已经在使用 request。您可以通过 login_id 装置中的 request.config 获取配置:

@pytest.fixture
def login_id(request):
user_id = request.config.getoption('--uid')
return user_id

关于python - 无法从 pytest.fixture 获取数据,而是获取数据位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54197398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com