python - 数据驱动测试 - ddt

Posted Jiaxy Gogogo

tags:

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

# -*- coding:utf-8 -*-

\'\'\'
@project: jiaxy
@author: Jimmy
@file: study_ddt.py
@ide: PyCharm Community Edition
@time: 2018-12-06 14:48
@blog: https://www.cnblogs.com/gotesting/

\'\'\'

\'\'\'

    study_ddt   :   data driver test , 数据驱动测试

1. 结合单元测试去执行用例
2. 装饰器
3. 安装:pip install study_ddt


如果使用了ddt设计了测试用例,加载测试用例时,可使用loader或discover

\'\'\'


import unittest
from ddt import ddt,data,unpack

test_data = [{\'a\':1,\'b\':2},{\'a\':3,\'b\':4}]

@ddt # 装饰测试类
class TestDdt(unittest.TestCase):

    @data(test_data) # 装饰测试方法
    def test_001(self,item):
        print(\'item:\',item)
        print(\' ____-*-*-*-*-____\')

    @data(*test_data)
    def test_002(self,item):
        print(\'item:\',item)
        print(\'item-a:\',item[\'a\'])
        print(\'item-b:\',item[\'b\'])
        print(\' ____-*-*-*-*-____\')

    @data(*test_data)
    @unpack # 对data拆分出来的数据,再次进行拆分,要用等量的变量进行接收
            # 如果要拆分的对象是字典,用来接收数据的变量名必须跟key值保持一致,无序
    def test_003(self,a,b):
        print(\'item-a\',a)
        print(\'item-b\',b)
        print(\' ____-*-*-*-*-____\')

if __name__ == \'__main__\':
    unittest.main()

 

以上是关于python - 数据驱动测试 - ddt的主要内容,如果未能解决你的问题,请参考以下文章

Python 数据驱动ddt 使用

python接口自动化测试 - 数据驱动DDT模块的简单使用

python-ddt模块使用

selenium python自动化测试 ddt数据驱动

python DDT读取excel测试数据

python seleniumunittest 及 ddt 数据驱动测试