python:理解unittest框架@ddt、@data、@unpack

分析

@data(不带的列表)会将整个列表作为参数传入,test0()获取的是整个二维列表
@data(带
的列表)会将整个列表的子元素作为参数逐个传入,test1()将二维列表的元素逐个传入,一个元素一个case
@unpack 将要传入的元素解包后传入,test_p()将将二维列表的元素逐个传入,并将元素拆解后传入

代码

import unittest

from ddt import ddt, data, unpack
@ddt
class Test_info2(unittest.TestCase):

    data0 = [[1,2,3],[4,5,6]]
    @data(data0)               # 将整个data0作为参数传入
    def test0(self,item):
        print("-------------   test0()   ------------")
        print(item)


    @data(*data0)            # 将data0每个子元素(list)作为参数整个传入
    def test1(self,item):
        print("-------------   test1()   ------------")
        print(item)

    @data(*data0)
    @unpack                 # 将data0每个子元素再拆成a,b,c参数传入
    def test_p(self, a,b,c):
        print("-------------   test_p()   ------------")
        print(f"a:{a}")
        print(f"b:{b}")
        print(f"c:{c}")

if __name__ == '__main__':
    unittest.main()

输出

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值