UnitTest是展开自动化测试的基础——这个框架很重要!
首先我们先自己写一个测试类:

1、被测试类 Widthget.py:

# coding: utf-8class Widthget:
def __init__(self, size=(10, 10)):
self._size = size def getSize(self):
return self._size def reSize(self, width, height):
if width < 0 or height < 0: raise ValueError, 'illegal size'
self._size = (width, height)

2、测试类:

# coding: utf-8from Widthget import Widthgetimport unittest# 执行测试的类class WidthgetTestCase(unittest.TestCase):

    def setUp(self):
self.width = Widthget() def testSize(self):
self.assertEqual(self.width.getSize(), (10, 10)) def testResize(self):
self.width.reSize(20, 20)
self.assertEqual(self.width.getSize(), (20, 20)) def tearDown(self):
self.width = None# 构造测试集def suite():
tc = unittest.TestSuite()
tc.addTest(Widthget("testSize"))
tc.addTest(Widthget("testResize")) return tc if __name__ == '__main__':
# unittest.main()
runner = unittest.TextTestRunner()
runner.run(suite())

运行测试文件可以看到:

如果对软件测试、接口测试、自动化测试、面试经验交流。感兴趣可以加软件测试交流:1085991341,还会有同行一起技术交流。

优化1:

我们没必要单独写构造测试集的方法,也就是说我们可以直接将suite()方法放到if name=='main':里面:

if __name__ == '__main__':

    tc = unittest.TestSuite()
tc.addTest(Widthget("testSize"))
tc.addTest(Widthget("testResize")) runner = unittest.TextTestRunner()
runner.run()

执行测试文件,可以看到用例也是可以通过的。

优化2:

测试用例都以test开头命名,比如测试登录,用例就命名为testLogin,测试退出用例就命名为testLoginOut,上面我们写的例子之所以能这么顺利的就通过,主要原因就在于我的用例(testSize,testResize)都是以test开头的。这是unittest框架的默认规定。
以上内容希望对你有帮助,有被帮助到的朋友欢迎点赞,评论。

UnitTest单元测试框架解析【实用篇】的更多相关文章

  1. 《selenium2 python 自动化测试实战》(21)——unittest单元测试框架解析

    unittest是展开自动化测试的基础——这个框架很重要! 我们先自己写一个测试类: 1.被测试类 Widthget.py: # coding: utf-8 class Widthget:    de ...

  2. unittest 单元测试框架

    引入 unittest 框架 相想使用unittest 框架,首先要引入unittest 包 import unittest class Baidu(unittest.TestCase): Baidu ...

  3. Python+Selenium框架设计篇之-简单介绍unittest单元测试框架

    前面文章已经简单介绍了一些关于自动化测试框架的介绍,知道了什么是自动化测试框架,主要有哪些特点,基本组成部分等.在继续介绍框架设计之前,我们先来学习一个工具,叫unittest.       unit ...

  4. unittest单元测试框架详解

    unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...

  5. unittest单元测试框架前言

    一.在我们没有学习过python语言的时候领导让我们做接口测试 我们都使用工具来做测试,一般常用的如jemeter,postman这些个工具,我来推荐使用postman 这个工具来进行接口测试,有的小 ...

  6. unittest单元测试框架总结

    unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...

  7. Selenium+Python ---- 免登录、等待、unittest单元测试框架、PO模型

    1.免登录在进行测试的过程中难免会遇到登录的情况,给测试工作添加了工作量,本文仅提供一些思路供参考解决方式:手动请求中添加cookies.火狐的profile文件记录信息实现.人工介入.万能验证码.去 ...

  8. unittest单元测试框架

    unittest单元测试框架 概述: 单元测试框架主要用来完成以下三件事: 提供用例组织与执行:当测试用例只有几条时,可以不必考虑用例的组织,但是当用例达到成百上千条时,大量的用例堆砌在一起,就产生了 ...

  9. unittest单元测试框架简单说明

    unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...

随机推荐

  1. SpringCloud生产消费者

    SpringCloud生产消费者 生产者与消费者 上一篇文章介绍了Euarka的搭建,SpringCloud服务注册中心 本篇文章,我们搭建俩个服务,生产者服务与消费者服务. 本文就以电商系统为例:服 ...

  2. [转] SpringBoot返回json 数据以及数据封装

    作者:武哥     来源:武哥聊编程   https://mp.weixin.qq.com/s/QZk0sKxBX4QZiCTHQIA6pg 1. Spring Boot关于Json的知识点 在项目开 ...

  3. 牛!Python 也能实现图像姿态识别溺水行为了!

    作者 | 李秋键 责编 | Carol 封图 | CSDN 下载自视觉中国 众所周知随着人工智能智能的发展,人工智能的落地项目也在变得越来越多,尤其是计算机视觉方面. 很多人学习python,不知道从 ...

  4. JVM与Java体系结构

    参考笔记:https://blog.csdn.net/weixin_45759791/article/details/107322503 前言 作为Java工程师的你曾被伤害过吗?你是否也遇到过这些问 ...

  5. C#LeetCode刷题之#16-最接近的三数之和(3Sum Closest)

    目录 问题 示例 分析 问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3620 访问. 给定一个包括 n 个整数的 ...

  6. 编译原理——求解First,Follow,Firstvt和Lastvt集合

    转载地址 http://dongtq2010.blog.163.com/blog/static/1750224812011520113332714/ 学编译原理的时候,印象最深的莫过于这四个集合了,而 ...

  7. span和input布局时对不齐

    如图 在span和input的css里各添加一行代码: vertical-align:top; (span和input在同一个盒子里)

  8. Node.js简易服务器,配合type="module" 实现html文件script标签 ES module引入模块

    相信大家在测试type="module" 在html文件中直接模块化引入 js时,会出现一个跨域问题. 当我们将<script ></scirpt> 标签t ...

  9. Centos7重置root密码(详细版)

    修改了root密码,步骤如下: 步骤一:在开机出现如下界面的时候就按“e”键     步骤二:在步骤一按下”e”键之后,出现如下界面,按 ↓键一直到底部找到“LANG=zh_CN.UTF-8”这句,在 ...

  10. Javascript之其实我觉得原型链没有难的那么夸张!

    原型链.闭包.事件循环等,可以说是js中比较复杂的知识了,复杂的不是因为它的概念,而是因为它们本身都涉及到很多的知识体系.所以很难串联起来,有一个完整的思路.我最近想把js中有点意思的知识都总结整理一 ...