今天就跟大家聊聊有关Pytest单元测试框架实现参数化的方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1、传入单个参数
pytest.mark.parametrize(argnames,argvalues)
argnames:参数名
argvalues:参数对应的值,类型必须为可迭代类型,一般为 list
import pytest
class Test01():
@pytest.mark.parametrize("school",["深圳多测师","广州多测师","上海多测师"])
def test_dcs(self,school):
print(school)
if __name__ == '__main__':
pytest.main(["-s","test_demo1.py"])
# 结果如下
test_demo1.py
深圳多测师.
广州多测师.
上海多测师.
2、传入多个参数
pytest.mark.parametrize((arg1,arg2),[(argvalue1,argvalue2),(argvalue3,argvalue4)])
list 中每个元素都是个元组,元组里的每个元素都与参数一一对应
import pytest
class Test01():
@pytest.mark.parametrize(("school","schoolmaster"),
[("深圳多测师","Mr.Chen"),
("上海多测师","Mr.Xie"),
("广州多测师","Mr.Fu")])
def test_dcs(self, school, schoolmaster):
print("{}校区的校长是{}".format(school,schoolmaster))
if __name__ == '__main__':
pytest.main(["-s","test_demo1.py"])
# 结果如下
test_demo1.py
深圳多测师校区的校长是Mr.Chen.
上海多测师校区的校长是Mr.Xie.
广州多测师校区的校长是Mr.Fu.
看完上述内容,你们对Pytest单元测试框架实现参数化的方法有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。