我希望有一个简单的解决方案,但我找不到任何东西。基本上,我有 fixtures.py 文件,我在其中创建了一个返回一些变量的简单装置:
import pytest
@pytest.fixture
def fix_test():
value = "some_value"
return value
现在,我知道这不起作用,但只是为了让您能清楚地了解这一点:
import pytest
from fixtures import test_fixture
@pytest.mark.parametrize("first_param","second_param",[
(test_fixture, "other_value"),
("other_value", test_fixture)
])
def test_fixtures(first_param, second_param)
print(first_param, second param)
所以,我的问题仍然是,如何使用固定装置中的变量作为 @pytest.mark.parametrize() 中的参数?
我尝试了我想到的每个选项:独立运行固定装置,在其他文件中运行它们并直接在测试中导入值(我知道有点过头了)... 我最接近的是这样的:
import pytest
from fixtures import test_fixture
@pytest.mark.parametrize("test_fixture", ["test_fixture"], indirect=True)
def test_2(test_fixture):
print(test_fixture)
但这里的问题是我不知道如何添加除了这个参数之外的另一个参数。
您找到解决这个问题的方法了吗?
非常感谢