Unittest参数化
1. 为什么要使用参数化
有些用例会考虑正向、逆向等多种组合,在同一个方法上测试不同的参数,这时候就需要考虑使用什么方法来进行管理大量测试数据,循环执行用例,提高代码的复用率。UnitTest提供了两种参数化方法,分别是ddt方法和paramunittest方法,两种方法都类似,可以传入多组参数,自动生成多个用例,下面就来介绍两个方法分别怎么使用。
2. ddt方法
2.1 ddt介绍
ddt即data driver test,数据驱动测试,简单来说就是测试数据的参数化。
2.2 ddt安装
使用pip下载安装ddt:
pip install ddt
或者使用豆瓣源安装pip install -i Simple Index ddt
2.3 ddt实战
1,首先声明一个@ddt,让程序知道我们要使用ddt了
2,使用@data来设定待测参数
3,使用@unpack来拆分数据,根据“,”来进行拆分
4,导入外部数据:@file_data

@unpack使用:拆分数据,可以拆分列表,元组,字典
列表测试:

元组测试:

字典测试:

读取文件填入参数
1.新建一个txt文件:

2.读取文件中的内容,填入参数

@file_data:文件参数化,导入外部文件
1、新建一个文件,如:ddt_data_file.json,也可以是yaml文件,使用yaml文件需要安装yaml: pip install pyyaml
2、传入文件地址
json文件内容


yaml文件内容


3. paramunittest
可以传入多组参数,自动生成多个用例,与ddt是一样的效果
环境准备:
1、使用pip下载安装paramunittest
pip install paramunittest或者使用豆瓣源,快一点
pip install -i Simple Index paramunittest
2、参数可以传元组也可以传字典
3、注意接受参数时,必须要定义setParameters这个方法,并且只能是这个名称。括号后面的参数分别接受传入的参数名称。前面定义的是字典,那参数就跟前面字典的key保持一致


4、执行顺序是先执行0,1,再执行10,11,12依次来的,设计就是如此,与前面的ddt是同样的
5、也可以传元组类型


————————————————
版权声明:本文为CSDN博主「哆啦A梦__-」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37846872/article/details/121531237

浙公网安备 33010602011771号