python领域驱动模式_Python下的数据驱动模式DDT库

1、DDT介绍

DDT(Data-Driven Tests)数据驱动测试,测试数据与测试行为分离,通过数据来驱动测试

DDt数据驱动测试,允许通过使用不同的测试数据运行一个测试用例,根据参数的个数可以运行多个不同的测试用例

2、为什么使用DDT

1、提高代码复用率减少代码冗余

2、可以将测试数据使用一个文件来存储

3、数据和测试业务分离

4、DDT库的安装

1、直接在PyCharm->File->Setting->Project->Project Interpreter页面添加

2、使用命令pip install ddt下载并安装

5、API

@ddt 类装饰器,作用于类上,应用于测试用例类

@data 作用于方法上,把参数作为测试数据

@unpack 方法装饰器添加解压功能

6、具体应用示例

import unittest

from ddt import ddt, data, unpack

'''

1、导入ddt相关包:from ddt import ddt, data, unpack

2、类上添加unittest.TestCase作用于测试用例上,和unittest一起使用

'''

@ddt

class Testddt(unittest.TestCase):

def setUp(self):

pass

'''结果运行三次'''

@data(12, 13, 14)

def test_1(self, value):

print(value)

'''结果运行一次,出(12,13,14)'''

@data((12, 13, 14))

def test_2(self, value):

print(value)

'''结果运行一次,输出12,13,14

参数个数看的是元祖里面的个数

'''

@data((12, 13, 14))

@unpack

def test_3(self, value1, value2, value3):

print(value1, value2, value3)

'''结果运行3次,分别输出(3, 2) (4, 3) (5, 3)'''

@data((3, 2), (4, 3), (5, 3))

def test_4(self, value):

print(value)

@data((3, 2), (4, 3), (5, 3))

@unpack

def test_5(self, value1, value2):

print(value1,value2)

@data([3, 2], [4, 3], [5, 3])

def test_6(self, value1):

print(value1)

@data([3, 2], [4, 3], [5, 3])

@unpack

def test_7(self, value1, value2):

print(value1,value2)

@data({'first': 1, 'second': 3, 'third': 2},{'first': 4, 'second': 6, 'third': 5})

def test_8(self, value1):

print(value1)

'''

字典拆包,参数需要和key名称一致,分别对应key值输出1 3 2

'''

@data({'first': 1, 'second': 3, 'third': 2})

@unpack

def test_9(self, first, second, third):

print(first,second,third)

7、总结

1、ddt针对的测试数据类型有元组、字典、列表、单个值,根据情况可使用@unpack进行拆包,可解析成多个参数提供使用。

2、示例中的结果,需要反复运行得到结果并分析

参考ddt库API网址:https://ddt.readthedocs.io/en/latest/api.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值