python数据驱动模块ddt
一、安装 pip install ddt
二、使用,参考文章 https://www.cnblogs.com/miniren/p/7099187.html
1、传入一个参数
[python] view plain copy
import unittest
from ddt import ddt,data,unpack
@ddt
class MyTestCase1(unittest.TestCase):
@data(1,2,3)
def test_normal(self,value):
print(value)
self.assertEqual(value,2)
if __name__=='__main__':
unittest.main()
1
2
3
4
5
6
7
8
9
10
11
2、传入元组、字典、列表等复杂结构数据,@data 标签结合 @unpack使用
[python] view plain copy
import unittest
from ddt import ddt,data,unpack
@ddt
class MyTestCase2(unittest.TestCase):
@data((1,2),(2,3))
@unpack
def test_tuple(self,value1,value2):
print(value1,value2)
self.assertEqual(value2,value1+1)
@data([1,2],[2,3])
@unpack
def test_list(self,value1,value2):
print(value1,value2)
self.assertEqual(value2,value1+1)
@data({'value1':1,'value2':2},{'value1':1,'value2':2})
@unpack
def test_dict(self,value1,value2):
print(value1,value2)
self.assertEqual(value2,value1+1)
if __name__=='__main__':
unittest.main()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
3、以文件作为数据传递@file_data
传递json数据
[python] view plain copy
import unittest
from ddt import ddt,data,unpack,file_data
@ddt
class MyTestCase3(unittest.TestCase):
@file_data('E:\\a.json')
def test_file(self,value):
print(value)
if __name__=='__main__':
unittest.main()
1
2
3
4
5
6
7
8
9
10
11
以上只是简单的使用了ddt模块进行数据驱动,实际项目应用过程中应该还需要更多知识的结合使用。
https://blog.csdn.net/u013118036/article/details/45558951
http://www.cnblogs.com/nuonuozhou/p/8645129.html
这篇文章将ddt模块与xldr excel一起使用,进行数据驱动