7.unittest_数据驱动(ddt)

在设计用例的时候,有些用例只是参数数据的输入不一样,比如登录这个功能,操作过程但是一样的。如果用例重复去写操作过程会增加代码量,对应这种多组数据的测试用例,可以用数据驱动设计模式,一组数据对应一个测试用例,用例自动加载生成。

一、环境准备

1.安装ddt模块,打开cmd输入pip install ddt在线安装

>>pip install ddt

二、数据驱动原理

  1. 测试数据为多个字典的list类型

  2. 测试类前加修饰@ddt.ddt

  3. case前加修饰@ddt.data()

  4. 运行后用例会自动加载成三个单独的用例

import unittest
import ddt
data = [{
     "a":"2","b":"2"},
        {
     "a":"2.11","b":"2.11"},
        {
     "a":"aaa","b":"aaaa"}]
@ddt.ddt()
class Test(unittest.TestCase):
    @ddt.data(*data)
    def test_01(self,data):
    #注意字典取值
        self.assertEqual(data["a"],data["b"])

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

你可能感兴趣的:(unittest)