Python中unittest的数据驱动详解

 更新时间:2022年08月26日 14:29:49   作者:weixin_72206076  
这篇文章主要介绍了Python中unittest的数据驱动详解,数据驱动测试,是一种单元测试框架,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下

前言

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

一.ddt简单介绍

1.ddt是什么

ddt:data driver tests ,数据驱动测试,是一种单元测试框架

2.使用ddt\的好处

如"前言"所说

3.导入ddt模块

ddt属于第三方模块,需要安装,安装方法:

  • 方法一:在cmd命令中输入:pip install ddt
  • 方法二:pycharm中打开终端,输入:pip install ddt

4.四种模式

ddt要与unittest单元测试框架一块结合使用

  • @ddt:引入ddt模块
  • @data:导入数据
  • @unpack:拆分数据     
  • @file_data:导入外部数据

二.ddt处理各种类型数据

注意:

  • 1.使用ddt模块要在测试类前用@ddt进行修饰
  •  2.要导入测试数据需在测试用例(以test_开头的方法)前用@data修饰
  •  3.若需对测试数据进行拆分需用@unpack修饰
  •  4.若需导入外部数据需用@file_data修饰

1.分析ddt工作原理

 代码中@data(1,2,“jack”)传入了三个元素,故ddt自动生成了3个测试用用例。分别打印传入的数据

注意:

对于没有使用ddt的测试用例来说,一个test_开头的测试方法一次只能生成一个测试用例,但是有了ddt之后,可以一次向测试方法中传入多个测试数据,而生成测试用例的个数是根据@data中传入的测试数据的元素而定的.

2.ddt测试元祖数据

2.1测试单组元素

2.2测试多组未分解元素

 2.3测试多组分解元素

 3.ddt测试列表数据

3.1多组列表拆分数据

3.2复杂列表(含字典)拆分数据

 4.ddt测试字典数据

4.1多组字典数据拆分

 5.ddt测试字典列表数据结合

 在实际应用中会存在数据比较多的情况,如果都直接把数据传入@data中会显得代码非常冗杂,以包含多个字典的列表数据为例,可将包含多个字典的元素存放在一个列表变量中,在@data中传入列表变量即可

 6.ddt测试读取文件数据

数据格式必须为json,且必须为双引号的键值对形式

到此这篇关于Python中unittest的数据驱动详解的文章就介绍到这了,更多相关Python unittest 数据驱动内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python常见字符串操作函数小结【split()、join()、strip()】

    Python常见字符串操作函数小结【split()、join()、strip()】

    这篇文章主要介绍了Python常见字符串操作函数,结合实例形式总结分析了split()、join()及strip()的常见使用技巧与注意事项,需要的朋友可以参考下
    2018-02-02
  • Pytorch 如何训练网络时调整学习率

    Pytorch 如何训练网络时调整学习率

    这篇文章主要介绍了Pytorch 如何训练网络时调整学习率的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • 详解Python的单元测试

    详解Python的单元测试

    这篇文章主要介绍了Python的单元测试,代码基于Python2.x版本,需要的朋友可以参考下
    2015-04-04
  • Python使用Flask框架实现文件上传实例

    Python使用Flask框架实现文件上传实例

    这篇文章主要介绍了Python使用Flask库文件上传实例,用 Flask 处理文件上传很容易,只要确保HTML表单中设置enctype="multipart/form-data"属性就可以了,需要的朋友可以参考下
    2023-08-08
  • python用户评论标签匹配的解决方法

    python用户评论标签匹配的解决方法

    这篇文章主要为大家详细介绍了python用户评论标签匹配的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Python 合并拼接字符串的方法

    Python 合并拼接字符串的方法

    这篇文章主要介绍了Python 合并拼接字符串的方法,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • pycharm激活码免费分享适用最新pycharm2020.2.3永久激活

    pycharm激活码免费分享适用最新pycharm2020.2.3永久激活

    免费为大家分享Pycharm激活码,适用最新版pycharm2020.2.3永久激活,pycharm2018,pycharm2019也可永久激活,可成功激活到2089年
    2020-11-11
  • python等间距取值方式

    python等间距取值方式

    这篇文章主要介绍了python等间距取值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • python找出因数与质因数的方法

    python找出因数与质因数的方法

    这篇文章主要介绍了python找出因数与质因数的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Windows10+anacond+GPU+pytorch安装详细过程

    Windows10+anacond+GPU+pytorch安装详细过程

    这篇文章主要介绍了Windows10+anacond+GPU+pytorch安装详细过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03

最新评论