数据驱动ddt简单使用

安装

pip install ddt

 

 

数据驱动 ddt  可以使用的地方很多

比如:

1. 做接口测试的参数化

2. 读取自动化测试关键字模型的测试用例

 

demo

复制代码
import ddt, unittest

lists = [[1, 'a'], [2, 'b'], [3, 'c']]

@ddt.ddt
class Test(unittest.TestCase):
    def setUp(self) -> None:
        print('分割线-----------------------')

    def tearDown(self) -> None:
        print('分割线-----------------------')


    """test01 传入 list"""
    @ddt.data([1, 'a'], [2, 'b'], [3, 'c'])
    def test01(self, a):
        print(a, '-->', a[0], '-->', a[1])

    """test02 传入 list , 并对 list 解包"""
    @ddt.data([1, 'a'], [2, 'b'], [3, 'c'])
    def test02(self, a):
        print(a, '-->', a[0], '-->', a[1])

    """test03 在外部传入 list"""
    @ddt.data(*lists)
    def test03(self, a):
        print(a, '-->', a[0], '-->', a[1])


    """test04 传入 dict"""
    @ddt.data({'name': 'zhangsan', "age": 18}, {'name': 'lisi', "age": 19}, {'name': 'wangwu', "age": 17})
    def test04(self, data):
        print(data['name'], data['age'])


    """test05 传入 file"""
    @ddt.file_data('C:\\a\\data_ddt\\a.json')
    def test05(self, name, age):
        print(name,age)



if __name__ == '__main__':
    unittest.main()
复制代码

 

说明:

复制代码
# a.json

[
  {
    "name": "张三",
    "age": "18"
  },
  {
    "name": "李四",
    "age": "19"
  }
]
复制代码

 

test01  输出:

 

 

 

test02 输出

 

 

 

test03 输出

 

 

 

test04 输出

 

 

test05 输出

 

posted @   十一的杂文录  阅读(458)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示