python ddt模块

本文介绍了Python中的ddt模块,用于数据驱动测试。通过pip安装ddt后,可以使用@data和@unpack装饰器处理不同类型的输入数据,如单一参数、元组、字典和列表。此外,还可利用@file_data读取文件,特别是JSON数据,实现更复杂的数据驱动。在实际项目中,通常需要结合其他工具如xldr和excel来进一步扩展其功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python数据驱动模块ddt

一、安装 pip install ddt

二、使用,参考文章 https://www.cnblogs.com/miniren/p/7099187.html

1、传入一个参数

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()

2、传入元组、字典、列表等复杂结构数据,@data 标签结合 @unpack使用

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()

3、以文件作为数据传递@file_data

传递json数据

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()

以上只是简单的使用了ddt模块进行数据驱动,实际项目应用过程中应该还需要更多知识的结合使用。

https://blog.youkuaiyun.com/u013118036/article/details/45558951 

 http://www.cnblogs.com/nuonuozhou/p/8645129.html

这篇文章将ddt模块与xldr excel一起使用,进行数据驱动





评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值