zoukankan      html  css  js  c++  java
  • (八)数据驱动ddt

    1,未使用可变参数

    import unittest
    import ddt
    
    t = ('苹果','火龙果','香蕉','柚子')
    
    
    @ddt.ddt
    class DemoTest(unittest.TestCase):
    
        @ddt.data(t)
        def test_login_demo(self, item):
            print('开始打印参数')
            print('取到的参数是{}'.format(item))
            print('结束打印参数')
    
    
    if __name__ == '__main__':
        unittest.main()
    

    打印的结果

    Process finished with exit code 0
    开始打印参数
    取到的参数是('苹果', '火龙果', '香蕉', '柚子')
    结束打印参数
    

    2,使用可变参数

    import unittest
    import ddt
    
    t = ('苹果','火龙果','香蕉','柚子')
    
    @ddt.ddt
    class DemoTest(unittest.TestCase):
    
        @ddt.data(*t)
        def test_login_demo(self, item):
            print('开始打印参数')
            print('取到的参数是{}'.format(item))
            print('结束打印参数')
    
    
    if __name__ == '__main__':
        unittest.main()
    

    打印的结果

    开始打印参数
    取到的参数是苹果
    结束打印参数
    开始打印参数
    取到的参数是火龙果
    结束打印参数
    开始打印参数
    取到的参数是香蕉
    结束打印参数
    开始打印参数
    取到的参数是柚子
    结束打印参数
    

    3,使用unpack

    import unittest
    import ddt
    
    t = [('苹果', '火龙果'), ('香蕉', '柚子')]
    
    
    @ddt.ddt
    class DemoTest(unittest.TestCase):
    
        @ddt.data(*t) # 装饰方法,data解包之后 有几个参数就运行几条用例
        @ddt.unpack # 根据,将上一层的数据再次进行根据逗号进行拆分 因为是两个参数 所以要用两个参数进行接收,注意:有几个变量就用几个参数进行接收
        def test_login_demo(self, item1, item2):
            print('开始打印参数')
            print('取到的参数是{}'.format(item1))
            print('结束打印参数')
    
    
    if __name__ == '__main__':
        unittest.main()
    

    打印的结果

    开始打印参数
    取到的参数是苹果
    结束打印参数
    开始打印参数
    取到的参数是香蕉
    结束打印参数
    
  • 相关阅读:
    csrf(跨站请求伪造)
    CBV加装饰器
    Django的中间件
    form组件简介
    统计日期天数及拓展使用
    回文数的定义以及拓展使用
    排序——冒泡,快速,选择,插入
    No resources found. Error from server (NotAcceptable): unknown (get pods)
    编程题训练5
    K8s集群内热改代码
  • 原文地址:https://www.cnblogs.com/lvchengda/p/13177748.html
Copyright © 2011-2022 走看看