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

       DDT包含类的装饰器ddt和两个方法装饰器data(直接输入测试数据),file_data(可以从json或者yaml中获取测试数据)

    实例代码:

    import ddt
    import  unittest
    test_data1 = [{"username": "zhangsan", "pwd": "zhangsan"},
                  {"username": "lisi", "pwd": "lisi"},
                  {"username": "wangwu", "pwd": "wangwu"},
                  ]
    test_data2 = [{"username": "wukong", "pwd": "wukong"},
                  {"username": "wuneng", "pwd": "woneng"},
                  {"username": "wujing", "pwd": "wujing"},
                  ]
    @ddt.ddt
    class Test(unittest.TestCase):
        def setUp(self):
            print("Start!")
        def tearDown(self):
            print("end!")
        @ddt.data(*test_data1)
        def test_ddt1(self, data):
            print(data)
        @ddt.data(*test_data2)
        def test_ddt2(self, data):
            print(data)
    if __name__ == "__main__":
        unittest.main()

    运行结果

    接口测试使用:

    import requests,ddt,unittest,json
    data=[200,201,200,201]
    @ddt.ddt
    class DoubanTest(unittest.TestCase):
        def setUp(self):
            pass
        def tearDown(self):
            pass
        def beij(self):
            cliner=requests.get('https://api.douban.com/v2/user/q')
            m=cliner.status_code
            return m
        @ddt.data(*data)
        def test1(self,data):
            m=self.beij()
            print(data)
            self.assertEqual(m,data)
    if __name__ =='__main__':
        unittest.main()

    运行示范

    示范的是@data 这个装饰器的以上。

    下面我们来看看文件的

    @file_data(filename)

    import ddt
    import  unittest
    @ddt.ddt
    class Test(unittest.TestCase):
        def setUp(self):
            print("Start!")
        def tearDown(self):
            print("end!")
        @ddt.file_data('data.yaml')
        def test_ddt1(self, value):
            print(value)
    if __name__ == "__main__":
        unittest.main()

    运行结果

    支持json yaml文件类型

  • 相关阅读:
    SQL 创建存储过程,让主键自增
    C# 实例练习(第二天)
    IT科技企业逻辑思维面试题
    C#学习——简介(第一天)
    C#中 ??、 ?、 ?: 、?.、?[ ]
    SQL Server类型与C#类型对应关系
    ios 键盘折叠
    html 水印效果
    JQuery筛选器全系列介绍
    将时间改为显示:几天前,几小时前,或者几分钟前
  • 原文地址:https://www.cnblogs.com/leiziv5/p/7299404.html
Copyright © 2011-2022 走看看