pytest parametrize,@pytest.mark.parametrize装饰器
永远的神干货盘点
1.方法详情:
参数化(argnames,argvalues,indirect=False,ids=None,scope=None)
常用参数:
参数名:参数名
argvalues:参数值(可以为目录和元组,或者字典列表,字典元组等),参数值有普通个,用例就会执行普通次。
2.使用方法
2.1.一个列表中一个参数多个值
示例代码:
data_list1=[数据1 ,数据2 ,数据3 ,数据4]
@ pytest。马克。参数ize( data ,data_list1)
定义测试_01(数据):
打印(数据)
运行结果:
2.2.多参数多值
示例代码:
data_list2=[(张1 , 123456 ),(张2 , 654321 ),(张3 , 456789)]
@ pytest。马克。参数ize(用户名,密码,数据_列表2)
def test_02(用户名,密码):
打印(用户名:密码)
运行结果:
2.3.多个参数混合使用
示例代码:
data_list3=[张,李]
data_list4=[王,刘]
data_list5=[赵,钱]
@ pytest。马克。参数ize( a ,data_list3)
@ pytest。马克。参数ize( b ,data_list4)
@ pytest。马克。参数ize( c ,data_list5)
def test_03(a,b,c):
打印(组合后的结果为{a}、{b}、{c})
2.4.传入字典数据
示例代码:
dict_data=({ 用户名: 张,密码: 123456},{ 用户名:李,密码: 654321})
@ pytest。马克。参数化(数据,字典数据)
def test_04(数据):
print(data.get(用户名): data.get(密码))
# print(数据[用户名]:数据[密码])
运行结果:
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。