• (八)数据驱动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()
    

    打印的结果

    开始打印参数
    取到的参数是苹果
    结束打印参数
    开始打印参数
    取到的参数是香蕉
    结束打印参数
    
  • 相关阅读:
    TEXT 6 Travelling with baggage
    TEXT 4 A question of standards
    TEXT 3 Food firms and fat-fighters
    linux——DNS服务器配置
    NISP视频知识点总结
    词根生词要打印加上汉译
    琐碎的总结 css jQuery js 等等。。。
    css 描述css reset的作用和用途。
    css--block formatting context
    《javascript高级程序设计》 第25章 新兴的API
  • 原文地址:https://www.cnblogs.com/lvchengda/p/13177748.html
Copyright © 2020-2023  润新知