如何通过Pytest单元测试框架实现参数化测试功能?

2026-05-16 21:321阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计366个文字,预计阅读时间需要2分钟。

如何通过Pytest单元测试框架实现参数化测试功能?

python

1.使用pytest.mark.parametrize进行参数化测试

- argnames:参数名称 - argvalues:参数值,类型为可迭代类型,如list - 示例:@pytest.mark.parametrize(school, [深圳])

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单元测试框架实现参数化测试功能?

本文共计366个文字,预计阅读时间需要2分钟。

如何通过Pytest单元测试框架实现参数化测试功能?

python

1.使用pytest.mark.parametrize进行参数化测试

- argnames:参数名称 - argvalues:参数值,类型为可迭代类型,如list - 示例:@pytest.mark.parametrize(school, [深圳])

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单元测试框架实现参数化测试功能?