上次咱们提到了unittest单元测试框架,运用单元测试框架unittest进行编写测试用例框架
可是遇到了一个问题,就是难道我一个测试点中有多个测试用例,我要每个都要去编写一条测试用例嘛?这实在是太复杂了,人工成本过高了函数
通过一系列的挣扎,最开始是使用的for循环实现的,这个也能够,可是过于累赘,而后采用了第三方库:ddt,简单介绍下ddt是怎么使用的单元测试
安装方式:测试
pip install ddtspa
使用方式:code
这个我就直接贴代码了吧,文字说明不太容易表达,测试数据仍是引用以前的测试数据吧,,,blog
import unittest from ddt import ddt, data def A(a, b): # 测试函数 return a+b @ddt class TestA(unittest.TestCase): # 测试数据 test_data = [{"a": 3, "b": 5, "expect": 8}, {"a": 3, "b": 3, "expect": 6}] @data(*test_data) def test_right(self, data_info): # 测试用例 self.assertEqual(data_info["expect"], A(data_info["a"], data_info["b"]), "用例执行失败") if __name__ == '__main__': # 执行全部的用例 unittest.main()
从上面的代码能够看出,咱们在test_data里面是存在两条数据,那么按照以前的咱们应该在下面写两个测试方法的,如今咱们只写了一个测试方法就OK; ,咱们看下执行的结果是什么吧接口
测试结果中显示咱们跑了两条测试用例,说明咱们用ddt已经解决了咱们数据驱动的问题了。ip
下面用图示说明下具体的it
关于ddt数据驱动,暂时就这么多,相信运用到接口测试中也是足够了