数据驱动的使用

数据驱动(ddt)

    使用需要结合unittest

    pip  install ddt

    

   使用方法一、

   from ddt import  ddt,data

  

  @ddt

 class A(unittest.TestCase):

     

  @data(参数1,参数2,参数3。。。。。)    说明:参数类型可以为列表,字典,但是每个参数是以逗号分隔;

    def test_method(self,value):     说明:value用于接收传入的每个参数

           print(value)           说明:打印出来每个参数,即传入的什么打印出来就是什么

说明:

如果传入的数据量比较大的,放到list、字典中,但是取出来的值是具体的每个参数,如果只想取参数值则使用file_data()读取json文件

使用方法二、

注意:默认会把uname算做一条用例,pwd算做一条用例,code算做一条用例,info算做一条用例

如:'test_login_00001_uname', 'test_login_00002_pwd', 'test_login_00003_code', 'test_login_00004_info'

所以参数前最好加上一个参数组序列:'test_login_00001_1'

把测试数据放入到一个json文件中

{

"1":{

"uname":"uname",

"pwd":"pwd",

"code":1,

"info":"正确用户名密码"},

"2":{

"uname":"uname",

"pwd":"pwd",

"code":-1,

"info":"错误用户名"

}

}

@ddt

class logins(unittest.TestCase):

"""询价系统登录相关测试用例"""

@file_data("../data/login_test_login.json")

def test_login(self,uname,pwd,code,info):

"""登录测试"""

url="接口地址"

data={"uname":uname,"pwd":pwd}

总结:使用ddt的好处是,代码只需要写一遍,可以运行出不同请求参数场景的cases;

把请求参数写入到json文件中,通过ddt读取对应参数值,进行传递;

猜你喜欢

转载自blog.csdn.net/qq_39676248/article/details/89083521