Unittest参数化

目录

1. 为什么要使用参数化

2. ddt方法

2.1 ddt介绍

2.2 ddt安装

2.3 ddt实战

3. paramunittest


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、也可以传元组类型

 

 

 

 

 

 

 

  • 1
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值