DDT模块的使用
Posted dhs94
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DDT模块的使用相关的知识,希望对你有一定的参考价值。
ddt模块包含了一个类的装饰器ddt和两个方法的装饰器:
data:包含多个你想要传给测试用例的参数;
file_data:会从json或yaml中加载数据;
unpanck:通常data中包含的每一个值都会作为一个单独的参数传给测试方法,如果这些值是用元组或者列表传进来的,可以用unpack方法将其自动分解成多个参数
@data(a,b)
那么a和b各运行一次用例
@data([a,d],[c,d])
如果没有unpack,那么[a,b]当成一个参数传入用例运行
如果有unpack,那么[a,b]被分解开,按照用例中的两个参数传递
如下代码:
1 import unittest 2 import ddt #第三方库 3 4 data=[[1,2],[3,4],[5,6]] 5 6 @ddt.ddt 7 8 class MyTestCase(unittest.TestCase): 9 10 只有一个参数时 11 @ddt.data(1,2,3) 12 def test_01(self,a): 13 print(a) 14 15 @ddt.data(*data)#表示可变参数取值为data([1,2],[3,4],[5,6]),若传参是data,则后面的取值 data([[1,2],[3,4],[5,6]]) 16 @ddt.unpack 17 def test_02(self,a,b): 18 print(a,‘----‘,b) 19 20 @ddt.data([1,2],[3,4])#和上面的相似,这里未使用变量 21 @ddt.unpack 22 def test_03(self,a,b): 23 print(a, ‘----‘, b)
以上是关于DDT模块的使用的主要内容,如果未能解决你的问题,请参考以下文章