在@pytest.mark.parametrize上使用类变量可以通过在测试类中定义一个类变量,并在测试方法中使用该类变量作为参数。下面是一个示例:
import pytest
class TestClass:
# 定义一个类变量
test_data = [
(1, 2),
(3, 4),
(5, 6)
]
@pytest.mark.parametrize("input1, input2", test_data)
def test_method(self, input1, input2):
# 测试方法使用类变量作为参数
assert input1 + input2 == 3
在上面的示例中,我们定义了一个名为test_data的类变量,它是一个包含多个元组的列表。每个元组表示一个测试用例,包含两个输入参数。然后,在test_method方法上使用@pytest.mark.parametrize装饰器,并将test_data作为参数传递给它。这样,pytest会自动将test_data中的每个元组拆解为对应的参数,并依次传递给test_method方法进行测试。
这种方式可以方便地管理和扩展测试数据,同时保持测试方法的简洁性。如果需要添加、修改或删除测试用例,只需修改test_data的定义即可,而不需要修改测试方法的代码。
推荐的腾讯云相关产品和产品介绍链接地址:
高校公开课
第五届Techo TVP开发者峰会
云+社区技术沙龙[第1期]
高校公开课
开箱吧腾讯云
云+社区沙龙online [云原生技术实践]
腾讯位置服务技术沙龙
第四期Techo TVP开发者峰会
领取专属 10元无门槛券
手把手带您无忧上云