关于测试夹具,我们知道,以类为对象的话,在python里对应的方法分别是test_isupper、test_upper, 那么以测试case为单位呢?

这时候,就要提到我们的setup()和tearDown()啦,在这里setup()函数做每个单元测试的初始化操作,而对应的tearDown()做每个单元测试的析构操作,首先我们在类里加入两个函数:

重新执行py文件,结果如图:

我们会发现在各个测试case执行前后会执行setUp()与tearDown(),包括test_upper()、test_isupper()。另外如果setUp()执行失败的话,情况会怎么样呢?

我们在setUp()函数里添加“抛出异常”操作,执行后我们会发现所有的测试case都报error了,大致如图:

同样的,若setup()执行成功,对应的测试case执行失败并且报error的话,这时tearDown()函数会执行吗?让我们试试吧。

我们在test_split()函数里加上“抛出异常”操作,执行后确认若setup()成功,那么不论之后测试case结果如何,对应的tearDown()函数都会执行。情况如图:

关于以测试case为单位的测试夹具总体如上所示,运行测试case时都会自动调用测试夹具中的setUp(),tearDown()。

转载于:https://www.cnblogs.com/tianshu/p/10467932.html

Python unittest第二篇:测试夹具相关推荐

  1. Python:第二篇【Python】进阶-关东升-专题视频课程

    Python:第二篇[Python]进阶-614人已学习 课程介绍         本书是智捷课堂开发的立体化图书中的一本,所谓"立体化图书"就是图书包含:书籍.视频.课件和服务等 ...

  2. 带你写爬虫(python)第二篇----抓取网易云音乐下面的评论(API方式)

    抓取网易云音乐<大学无疆>的评论 一直喜欢使用网易云音乐,网易云歌曲下面的评论给其加分不少,所以这一篇来写一下怎么抓取歌曲下面的评论. 准备工作 目标网页:http://music.163 ...

  3. python 基础命令-Python unittest第一篇:基础入门+命令行编译

    unittest单元测试框架最初受JUnit启发,与其他语言的主要单元测试框架具有相似的风格. 它支持测试自动化,支持开启或关闭某个测试,支持结合测试.另外它可以生成各个单元测试的报告.为了实现以上功 ...

  4. python基础第二篇

    python基础 二月红 真心觉得python这门语言是业界良心: 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 一.列表.元组操作 列表是最常用的数据类型之一,可实现最方 ...

  5. python学习[第二篇] 基础二

    控制结构 if 语句 # only if blockif condition:if_true_block# if_else blockif condition:if_true_block else:i ...

  6. 初学Python——文件操作第二篇

    前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...

  7. [转帖]虚拟内存探究 -- 第二篇:Python 字节

    虚拟内存探究 -- 第二篇:Python 字节 http://blog.coderhuo.tech/2017/10/15/Virtual_Memory_python_bytes/是真看不懂哦  翻译 ...

  8. 九、给小白看的第二篇Python基础教程

    本文是第二篇 @Author:Runsen @Date:Writern By 2019/04/15 and supplied By 2020/3/31 @公众号:Python之王 本系列Python基 ...

  9. Python之路【第二篇】:Python基础(一)

    Python之路[第二篇]:Python基础(一) 入门知识拾遗 一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 1 2 3 if 1==1:     name ...

最新文章

  1. 基于SSM实现旅游酒店预定管理系统平台
  2. java 目录的遍历与删除
  3. boost::hana::first用法的测试程序
  4. [恢]hdu 1865
  5. POSIX信号量API函数
  6. 需要的依赖_三十而已:夫妻关系中需要的是坦诚和依赖
  7. python 打包 太大 精简_极简 Python 打包指南
  8. bzoj3110 [Zjoi2013]K大数查询
  9. 恒大与小米洽谈出售恒大汽车65%股份?恒大:有过初步交流,没深谈
  10. 深入了解帆软报表系统的启动过程二
  11. Android拍照与相册选取图片
  12. 单溶水箱串级控制计算机控制,单容水箱液位控制系统
  13. pytorch实现孪生神经网络对人脸相似度进行识别
  14. 【OVRP问题】基于鲸鱼优化算法求解开放式车辆路径问题附matlab代码
  15. 联想笔记本电脑B490、B480拆机教程(清灰、换硅脂、换散热器)详细步骤
  16. C/C++ 程序员的编程修养
  17. 星际争霸、魔兽争霸3、红色警戒之完全对比
  18. c语言数组文曲星猜数游戏编程,文曲星“猜数字”游戏的计算机模拟 —— 算法分析与实现...
  19. 分析器错误消息: 无法执行程序。所执行的命令为 C:\Windows\Microsoft.NET\Framework\v4.0 \csc.exe/noconfig/fullpaths@C:\W
  20. 数据结构(10)广义表的介绍与代码实现(c语言)

热门文章

  1. 2020年工博会看什么?机器人、工业互联网、自动化……
  2. 太空射击 第02课:使用精灵
  3. VCSA重装后VSAN磁盘组信息无法显示
  4. THE TWELFTH DAY
  5. CentOS7下配置Supervisor自启动的两种方法
  6. 纳米计算机生活应用,纳米技术在生活中有哪些应用
  7. python通过键盘方向键移动_平滑地通过键盘移动角色示例.py
  8. [附源码]计算机毕业设计Python疫情物资管理系统(程序+源码+LW文档)
  9. 2017年全国大学生数学建模竞赛——A题 CT系统参数标定及成像(个人笔记)
  10. JavaScript中DOM事件