一、DDT数据驱动
DDT:Data Driver Tests
数据驱动:将不同的数据在同一个业务逻辑上运行。
二、使用
1、安装:pip install ddt
2、语法
2.1、在测试类上使用@ddt
2.2、在测试函数上使用@data(*case_data)进行数据解压,然后每一个元素传入测试函数

3、@data():加压一层
@unpack:解压两层
三、代码示例

import unittest
from ddt import ddt, data, unpack

case_data = [{"url": "www.baidu.com", "data": "test1"},
             {"url": "www.baidu.com", "data": "test2"},
             {"url": "www.baidu.com", "data": "test3"}]


@ddt
class TestDemo(unittest.TestCase):
    @data(*case_data)
    def test_case(self, case):
        print(case)

运行结果:
Ran 3 tests in 0.005s

OK
{‘url’: ‘www.baidu.com’, ‘data’: ‘test1’}
{‘url’: ‘www.baidu.com’, ‘data’: ‘test2’}
{‘url’: ‘www.baidu.com’, ‘data’: ‘test3’}

unpack的使用:

import unittest
from ddt import ddt, data, unpack


case_data = [(1, 2, 3, 4, 5), ('a', 'b', 'c', 'd', 'e')]


@ddt
class TestDemo(unittest.TestCase):
    @unpack
    @data(*case_data)
    def test_case(self, data1, data2, data3, data4, data5):
        print(data1, data2, data3, data4, data5)

运行结果:
1 2 3 4 5
a b c d e

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐