数据驱动ddt简单使用

Posted shiyixirui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据驱动ddt简单使用相关的知识,希望对你有一定的参考价值。

安装

pip install ddt

 

 

数据驱动 ddt  可以使用的地方很多

比如:

1. 做接口测试的参数化

2. 读取自动化测试关键字模型的测试用例

 

demo

import ddt, unittest

lists = [[1, a], [2, b], [3, c]]

@ddt.ddt
class Test(unittest.TestCase):
    def setUp(self) -> None:
        print(分割线-----------------------)

    def tearDown(self) -> None:
        print(分割线-----------------------)


    """test01 传入 list"""
    @ddt.data([1, a], [2, b], [3, c])
    def test01(self, a):
        print(a, -->, a[0], -->, a[1])

    """test02 传入 list , 并对 list 解包"""
    @ddt.data([1, a], [2, b], [3, c])
    def test02(self, a):
        print(a, -->, a[0], -->, a[1])

    """test03 在外部传入 list"""
    @ddt.data(*lists)
    def test03(self, a):
        print(a, -->, a[0], -->, a[1])


    """test04 传入 dict"""
    @ddt.data({name: zhangsan, "age": 18}, {name: lisi, "age": 19}, {name: wangwu, "age": 17})
    def test04(self, data):
        print(data[name], data[age])


    """test05 传入 file"""
    @ddt.file_data(C:\\a\\data_ddt\\a.json)
    def test05(self, name, age):
        print(name,age)



if __name__ == __main__:
    unittest.main()

 

说明:

# a.json

[
  {
    "name": "张三",
    "age": "18"
  },
  {
    "name": "李四",
    "age": "19"
  }
]

 

test01  输出:

技术图片

 

 

 

test02 输出

技术图片

 

 

 

test03 输出

技术图片

 

 

 

test04 输出

技术图片

 

 

test05 输出

技术图片

 

以上是关于数据驱动ddt简单使用的主要内容,如果未能解决你的问题,请参考以下文章

数据驱动ddt简单使用

python-ddt模块使用

Python 中使用 ddt 来进行数据驱动,批量执行用例,修改ddt代码

数据驱动—ddt

Python 数据驱动ddt 使用

数据驱动ddt