Python单元测试框架unittest简明使用实例
测试步骤
1. 导入unittest模块
import unittest
2. 编写测试的类继承unittest.TestCase
class Tester(unittest.TestCase)
3. 编写测试的方法必须以test开头
def test_add(self)
def test_sub(self)
4.使用TestCase class提供的方法测试功能点
5.调用unittest.main()方法运行所有以test开头的方法
if __name__ == '__main__':
unittest.main()
实例如下
被测试类
#!/usr/bin/python
#coding=utf-8
class Computer(object):
@staticmethod
def add(a, b):
return a + b;
@staticmethod
def sub(a, b):
return a - b;<strong> </strong>
测试类
#!/usr/bin/python
#coding=utf-8
import unittest
from Testee import Computer
class Tester(unittest.TestCase):
def test_add(self):
self.assertEqual(Computer.add(2, 3), 5, "test add function")
def test_sub(self):
self.assertEqual(Computer.sub(5, 1), 4, "test sub function")
if __name__ == '__main__':
unittest.main()
运行结果:
----------------------------------------------------------------------
Ran 2 tests in 0.000s
OK
相关推荐
-
Python中的测试模块unittest和doctest的使用教程
我要坦白一点.尽管我是一个应用相当广泛的公共域 Python 库的创造者,但在我的模块中引入的单元测试是非常不系统的.实际上,那些测试大部分 是包括在 gnosis.xml.pickle 的 Gnosis Utilities 中的,并由该子软件包(subpackage)的贡献者所编写.我还发现,我下载的绝大多数第三方 Python 包都缺少完备的单元测试集. 不仅如此,Gnosis Utilities 中现有的测试也受困于另一个缺陷:您经常需要在极其大量的细节中去推定期望的输出,以确定测试的成败
-
对Python的Django框架中的项目进行单元测试的方法
Python中的单元测试 我们先来回顾一下Python中的单元测试方法. 下面是一个 Python的单元测试简单的例子: 假如我们开发一个除法的功能,有的同学可能觉得很简单,代码是这样的: def division_funtion(x, y): return x / y 但是这样写究竟对还是不对呢,有些同学可以在代码下面这样测试: def division_funtion(x, y): return x / y if __name__ == '__main__': print division
-
Python中unittest模块做UT(单元测试)使用实例
待测试的类(Widget.py) # Widget.py # Python 2.7.6 class Widget: def __init__(self, size = (40,40)): self.size = size def getSize(self): return self.size def reSize(self,width,height): if width <0 or height < 0: raise ValueError, 'illegal size' else: self.
-
利用Python中unittest实现简单的单元测试实例详解
前言 单元测试的重要性就不多说了,可恶的是Python中有太多的单元测试框架和工具,什么unittest, testtools, subunit, coverage, testrepository, nose, mox, mock, fixtures, discover,再加上setuptools, distutils等等这些,先不说如何写单元测试,光是怎么运行单元测试就有N多种方法,再因为它是测试而非功能,是很多人没兴趣触及的东西.但是作为一个优秀的程序员,不仅要写好功能代码,写好测试代码一样
-
python单元测试unittest实例详解
本文实例讲述了python单元测试unittest用法.分享给大家供大家参考.具体分析如下: 单元测试作为任何语言的开发者都应该是必要的,因为时隔数月后再回来调试自己的复杂程序时,其实也是很崩溃的事情.虽然会很快熟悉内容,但是修改和调试将是一件痛苦的事情,如果你在修改了代码后出现问题的话,而单元测试可以帮助我们很快准确的定位到问题的位置,出现问题的模块和单元.所以这是一件很愉快的事情,因为我们知道其它修改或没有修改的地方仍然是正常工作的,而我们目前的唯一问题就是搞定眼前这个有点问题的"家伙&qu
-
Python中unittest用法实例
本文实例讲述了Python中unittest的用法,分享给大家供大家参考.具体用法分析如下: 1. unittest module包含了编写运行unittest的功能,自定义的test class都要集成unitest.TestCase类,test method要以test开头,运行顺序根据test method的名字排序,特殊方法: ① setup():每个测试函数运行前运行 ② teardown():每个测试函数运行完后执行 ③ setUpClass():必须使用@classmethod 装
-
Python之PyUnit单元测试实例
本文实例讲述了Python之PyUnit单元测试,与erlang eunit单元测试很像,分享给大家供大家参考.具体方法如下: 1.widget.py文件如下: 复制代码 代码如下: #!/usr/bin/python # Filename:widget.py class Widget: def __init__(self, size = (40, 40)): self.size = size def getSize(self): return self.size def resize(
-
Python单元测试框架unittest使用方法讲解
概述 1.测试脚手架(test fixture) 测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown(). 2.测试案例(test case) 最小的测试单元. 3.测试套件(test suite) 测试案例的集合. 4.测试运行器(test runner) 测试执行的组件. 命令行接口 可以用命令行运行测试模块,测试类以及测试方法. 复制代码 代码如下: python -m unittest test_module1 test_module2 python -m
-
详解Python的单元测试
如果你听说过"测试驱动开发"(TDD:Test-Driven Development),单元测试就不陌生. 单元测试是用来对一个模块.一个函数或者一个类来进行正确性检验的测试工作. 比如对函数abs(),我们可以编写出以下几个测试用例: 输入正数,比如1.1.2.0.99,期待返回值与输入相同: 输入负数,比如-1.-1.2.-0.99,期待返回值与输入相反: 输入0,期待返回0: 输入非数值类型,比如None.[].{},期待抛出TypeError. 把上面的测试用例放到一个测试模块
-
在Python中进行自动化单元测试的教程
一.软件测试 大型软件系统的开发是一个很复杂的过程,其中因为人的因素而所产生的错误非常多,因此软件在开发过程必须要有相应的质量保证活动,而软件测试则是保证质量的关键措施.正像软件熵(software entropy)所描述的那样:一个程序从设计很好的状态开始,随着新的功能不断地加入,程序逐渐地失去了原有的结构,最终变成了一团乱麻(其实最初的"很好的状态"得加个问号).测试的目的说起来其实很简单也极具吸引力,那就是写出高质量的软件并解决软件熵这一问题. 可惜的是,软件开发人员很少能在编码
随机推荐
- JSP由浅入深(8)—— JSP Tags
- mysql_escape_string()函数用法分析
- Android开发中Socket通信的基本实现方法讲解
- asp.net类序列化生成xml文件实例详解
- 值得分享的bootstrap table实例
- php微信开发之批量生成带参数的二维码
- PHP实现抓取迅雷VIP账号的方法
- Python的Django框架中TEMPLATES项的设置教程
- php的mssql数据库连接类实例
- 善用事件代理,警惕闭包的性能陷阱。
- React学习笔记之条件渲染(一)
- 迪菲-赫尔曼密钥交换(Diffie–Hellman)算法原理和PHP实现版
- jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
- 详细对比C语言中的chmod()函数和fchmod()函数
- 不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题
- Android Activity的生命周期详细介绍
- 详解C++编程中类的声明和对象成员的引用
- C#日期格式强制转换方法(推荐)
- 微信小程序ajax实现请求服务器数据及模版遍历数据功能示例
- 寻找二叉树最远的叶子结点(实例讲解)