Python之PyUnit单元测试实例


Posted in Python onOctober 11, 2014

本文实例讲述了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(self, width, height):

if width < 0 or height < 0:

raise ValueError, "illegal size"

self.size = (width, height)

 

def dispose(self):

passDefaultTestCase

2. auto.py文件如下:

#!/usr/bin/python

# Filename:auto.py

 

import unittest

from widget import Widget

 

class WidgetTestCase(unittest.TestCase):

def setUp(self):

self.widget = Widget()

 

def tearDown(self):

self.widget = None

 

def testSize(self):

self.assertEqual(self.widget.getSize(), (50, 40))

 

def suite():

suite = unittest.TestSuite()

suite.addTest(WidgetTestCase("testSize"))

return suite

 

if __name__ == "__main__":

unittest.main(defaultTest = 'suite')

3.执行结果如下:

[code]jobin@jobin-desktop:~/work/python/py_unit$ python auto.py
.
----------------------------------------------------------------------
Ran 1 test in 0.000s
 
OK
jobin@jobin-desktop:~/work/python/py_unit$ python auto.py
F
======================================================================
FAIL: testSize (__main__.WidgetTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "auto.py", line 15, in testSize
self.assertEqual(self.widget.getSize(), (50, 40))
AssertionError: (40, 40) != (50, 40)
 
----------------------------------------------------------------------
Ran 1 test in 0.000s
 
FAILED (failures=1)
jobin@jobin-desktop:~/work/python/py_unit$[/code]

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python和shell变量互相传递的几种方法
Nov 20 Python
python实现带验证码网站的自动登陆实现代码
Jan 12 Python
在Python3中使用asyncio库进行快速数据抓取的教程
Apr 02 Python
Python设计模式中单例模式的实现及在Tornado中的应用
Mar 02 Python
详解Python多线程
Nov 14 Python
Python文件如何引入?详解引入Python文件步骤
Dec 10 Python
Spring实战之使用util:命名空间简化配置操作示例
Dec 09 Python
如何给Python代码进行加密
Jan 10 Python
如何在sublime编辑器中安装python
May 20 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
Feb 02 Python
拒绝盗图!教你怎么用python给图片加水印
Jun 04 Python
ROS系统将python包编译为可执行文件的简单步骤
Jul 25 Python
采用Psyco实现python执行速度提高到与编译语言一样的水平
Oct 11 #Python
跟老齐学Python之编写类之四再论继承
Oct 11 #Python
Python使用MySQLdb for Python操作数据库教程
Oct 11 #Python
跟老齐学Python之编写类之三子类
Oct 11 #Python
跟老齐学Python之编写类之二方法
Oct 11 #Python
Python中MYSQLdb出现乱码的解决方法
Oct 11 #Python
python操作mysql中文显示乱码的解决方法
Oct 11 #Python
You might like
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
2014/06/23 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
jQuery学习总结之元素的相对定位和选择器(持续更新)
2011/04/26 Javascript
纯js实现重发验证码按钮倒数功能
2015/04/21 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
jQuery webuploader分片上传大文件
2016/11/07 Javascript
JS实现间歇滚动的运动效果实例
2016/12/22 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
2018/10/26 Javascript
vue基于viewer实现的图片查看器功能
2019/04/12 Javascript
在vue中实现清除echarts上次保留的数据(亲测有效)
2020/09/09 Javascript
Vant 在vue-cli 4.x中按需加载操作
2020/11/05 Javascript
Python模仿POST提交HTTP数据及使用Cookie值的方法
2014/11/10 Python
在Django框架中编写Contact表单的教程
2015/07/17 Python
python实现数据写入excel表格
2018/03/25 Python
Python 3.7新功能之dataclass装饰器详解
2018/04/21 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
python实现彩票系统
2020/06/28 Python
python使用Turtle库绘制动态钟表
2018/11/19 Python
在python中实现同行输入/接收多个数据的示例
2019/07/20 Python
Python集成开发工具Pycharm的安装和使用详解
2020/03/18 Python
python学生管理系统的实现
2020/04/05 Python
Python读取Excel一列并计算所有对象出现次数的方法
2020/09/04 Python
利用Python将图片中扭曲矩形的复原
2020/09/07 Python
香港连卡佛百货官网:Lane Crawford
2019/09/04 全球购物
莫斯科珠宝厂官方网站:Miuz
2020/09/19 全球购物
军训自我鉴定范文
2014/02/13 职场文书
最新结婚典礼主持词
2014/03/14 职场文书
教育局党的群众路线教育实践活动整改方案
2014/09/20 职场文书
列车乘务员工作不细心检讨书
2014/10/07 职场文书
领导干部作风建设自查报告
2014/10/23 职场文书
董事长秘书工作总结
2015/08/14 职场文书
Python数据可视化之用Matplotlib绘制常用图形
2021/06/03 Python
Java 使用类型为Object的变量指向任意类型的对象
2022/04/13 Java/Android
spring IOC容器的Bean管理XML自动装配过程
2022/05/30 Java/Android