这篇文章主要介绍了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.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。