数据驱动测试框架DDT的使用

数据驱动测试框架DDT的使用

  • DDT测试框架的介绍

DDT全程为Data Driver Test数据驱动测试,是由测试数据驱动测试用例的执行,加入ddt框架,可以实现用例的重复执行以及代码的重复使用,减少工作量。数据代码分离为主流设计思路,在常见的测试体系中可以使用xml文件、excel文件、json文件来管理测试数据,通过代码自动读取,来驱动用例的执行,ddt测试框架基于这种设计思路上,实现了方便使用,简单易懂的效果

  • DDT的安装

DDT是基于python的测试框架,一般与unittest测试框架搭配使用,所以在安装使用ddt之前,需要先安装好Python并配置Python环境变量。

安装时可以直接在cmd中使用pip来安装

 

  • DDT的使用

DDT由几个关键部分组成:1.装饰类 2.普通装饰器 3.参数拆分

(装饰器为Python中的语法结构,通过@语法糖来使用,装饰器是在方法或者类的基础上新增的额外功能,相当于装饰了方法,新增了额外的功能,具体需要查看python语法)

  1. 装饰类ddt:在上文介绍过,ddt一般与unittest搭配使用,在使用unittest时,可以自定义类来编写测试用例,例如:

 

在脚本最上方导入ddt框架后,可以使用装饰类ddt,来装饰自定义的测试用例,被ddt装饰的类可以直接使用ddt测试框架

2.装饰器ddt.data,使用data装饰unittest中的测试方法,该方法可以读取到data中设定的测试数据,来驱动用例的执行,例如

 

需要注意的是,被装饰的方法需要定义传入参数,例如value,data需要定义测试的数据例如(1,2,3,4),执行效果为test_fun()方法会执行4次,依次读取data中设定好的测试数据

3.unpack的使用,当test_*()方法需要传入多个参数时,需要通过列表或者元组来设定参数,则需要通过unpack方法来解析参数,例如:

 

Test_function()方法定义了两个传入参数,data装饰器中设定了三组参数,由于参数保存在列表中,则需要使用unpack方法解析列表,解析后的参数会正常给a,b赋值,第一次执行a=20,b-=30 第二次执行a=40,b=50 第三次执行a=50,b=60

4.引入excel数据作为测试数据

 

封装好的excel数据方法为:

 

引入封装好的excel类,并创建对象,

 

然后在data装饰器中引用excel中的数据,如下:

 

完整版代码如下:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章