数据驱动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简单使用的主要内容,如果未能解决你的问题,请参考以下文章