python数据驱动是什么意思-Python数据驱动ddt

import ddt

import unittest

"""

ddt模块包含了一个类的装饰器ddt和两个方法的装饰器:

data:包含多个你想要传给测试用例的参数;

file_data:会从json或yaml中加载数据;

通常data中包含的每一个值都会作为一个单独的参数传给测试方法,如果这些值是用元组或者列表传进来的,可以用unpack方法将其自动分解成多个参数。

"""

test_data2 = [{"a": "1", "pwd": "123456"},

{"b": "2", "pwd": "123456"}]

@ddt.ddt

class Test(unittest.TestCase):

def setUp(self):

print("Start!")

def tearDown(self):

print("end!")

@ddt.file_data("url.yaml")

def test_ddt1(self, **data):

print(data)

"""

执行2次,yaml文件中是一个含有2个元素的list

Start!

{"url": "http://feature.v3.0.1.xxxx.com/albums",

"headers": {"Authorization": "x3JpemF0aW9ucyIsIxxwz8V1gn80yE-b8",

"Accept": "application/vnd.xxx.admin+json"},

"Body": {"url": "http://list.youku.com/show/ixxxbf.html?spm=a2h0j.11185381.bpmodule-playpage-righttitle.5~H2~A"},

"code": {"status_code": 200, "message": "success"}}

end!

Start!

{"url": "http://feature.v3.0.1.xxxx.com/albums",

"headers": {"Authorization": "x3JpemF0aW9ucyIsIxxwz8V1gn80yE-b8",

"Accept": "application/vnd.xxx.admin+json"},

"Body": {"url": "http://list.youku.com/show/ixxxbf.html?spm=a2h0j.11185381.bpmodule-playpage-righttitle.5~H2~A"},

"code": {"status_code": 200, "message": "success"}}

end!

"""

@ddt.data(*test_data2)

def test_ddt2(self, data):

print(data)

return data

"""

Start!

{"a": "1", "pwd": "123456"}

end!

Start!

{"b": "2", "pwd": "123456"}

end!

"""

# suit = unittest.TestSuite()

# suit.addTest(Test("test_ddt1"))

# suit.addTest(unittest.makeSuite(Test))

# unittest.TextTestRunner().run(suit)

if __name__ == "__main__":

unittest.main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值