gpt4 book ai didi

python - 使用函数参数化 pytest

转载 作者:行者123 更新时间:2023-12-04 16:44:59 26 4
gpt4 key购买 nike

我有许多不同的自定义变压器功能,并且想对所有这些功能运行一个简单的测试(例如打印出变压器)。我可以为每个函数编写单独的测试,但认为必须有更简单的方法。
我看过参数化测试但得到:TypeError: 'function' object is not iterable

@pytest.fixture
def list_transformers(self):
list_transformers = [
TransformerOne(column='a'),
TransformerTwo(column='a')
]
return list_trasformers

@pytest.mark.parametrize("transformer", list_transformers)
def test_print(self, transformer):
tf_type = transformer[0]
params = transformer[1]
tf = tf_type(**params)
print(tf)
我认为这是因为转换器函数没有返回可迭代的东西。我应该以不同的方式解决这个问题吗?

最佳答案

为什么不直接将列表传递给装饰器:

@pytest.mark.parametrize("transformer", [TransformerOne(column='a'), TransformerTwo(column='a')])
def test_print(self, transformer):
...

关于python - 使用函数参数化 pytest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69253395/

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