pytest参数化的实现,使用装饰器来实现
@pytest.mark.parameterize(argnames,argvalues)
argnames表示参数名称,是一串字符,多个桉树之间由都好隔开"username,password"
argvalues表示参数化的数据,用元组来表示,[("13825110000‘,”123456“),(13900000000”,“111111”)]
argname的参数个数要遇argvalue里面的测试数据个数要相同,否则会报错
import pytest
def add(a,b):
return a + b
class Test_add:
# 每个元组代表一个测试用例,有n条测试用例则执行n次
@pytest.mark.parametrize("x,y,expect",[(1,2,3),(2,2,4),(3,2,5)])
def test_add_001(self,x,y,expect):
result = add(x,y)
assert expect == result
查看执行结果