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 相关文章推荐
Python3.x和Python2.x的区别介绍
Feb 12 Python
使用python开发vim插件及心得分享
Nov 04 Python
Python实现的弹球小游戏示例
Aug 01 Python
Python解决N阶台阶走法问题的方法分析
Dec 28 Python
推荐10款最受Python开发者欢迎的Python IDE
Sep 16 Python
matplotlib实现区域颜色填充
Mar 18 Python
django迁移数据库错误问题解决
Jul 29 Python
django创建最简单HTML页面跳转方法
Aug 16 Python
python 实现图片上传接口开发 并生成可以访问的图片url
Dec 18 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
Jan 10 Python
如何打包Python Web项目实现免安装一键启动的方法
May 21 Python
python中redis包操作数据库的教程
Apr 19 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
咖啡与牛奶
2021/03/03 冲泡冲煮
php4的session功能评述(一)
2006/10/09 PHP
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
2014/09/29 PHP
ThinkPHP模板中数组循环实例
2014/10/30 PHP
php中mt_rand()随机数函数用法
2014/11/24 PHP
php银联网页支付实现方法
2015/03/04 PHP
四个常见html网页乱码问题及解决办法
2015/09/08 PHP
FireFox JavaScript全局Event对象
2009/06/14 Javascript
JavaScript 页面坐标相关知识整理
2010/01/09 Javascript
javascript URL编码和解码使用说明
2010/04/12 Javascript
qTip2 精致的基于jQuery提示信息插件
2012/02/17 Javascript
JavaScript bold方法入门实例(把指定文字显示为粗体)
2014/10/17 Javascript
自定义jQuery插件方式实现强制对象重绘的方法
2015/03/23 Javascript
js表单处理中单选、多选、选择框值的获取及表单的序列化
2016/03/08 Javascript
详解Jquery实现ready和bind事件
2016/04/14 Javascript
14 个折磨人的 JavaScript 面试题
2016/08/08 Javascript
JavaScript面向对象分层思维全面解析
2016/11/22 Javascript
jQuery动态追加页面数据以及事件委托详解
2017/05/06 jQuery
关于vue-router的beforeEach无限循环的问题解决
2017/09/09 Javascript
解决VUEX兼容IE上的报错问题
2018/03/01 Javascript
JS实现字符串翻转的方法分析
2018/08/31 Javascript
原生JS实现贪吃蛇小游戏
2020/03/09 Javascript
React组件设计模式之组合组件应用实例分析
2020/04/29 Javascript
[41:21]夜魇凡尔赛茶话会 第三期02:看图识人
2021/03/11 DOTA
浅谈python内置变量-reversed(seq)
2017/06/21 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
python使用selenium登录QQ邮箱(附带滑动解锁)
2019/01/23 Python
详解python中的线程与线程池
2019/05/10 Python
python 绘制国旗的示例
2020/09/27 Python
python lambda的使用详解
2021/02/26 Python
香港演唱会订票网站:StubHub香港
2019/10/10 全球购物
高中班长自我鉴定
2013/12/20 职场文书
测控技术与通信工程毕业生自荐信范文
2013/12/28 职场文书
消防器材管理制度
2014/01/28 职场文书
2014厂务公开实施方案
2014/02/17 职场文书
青年文明号创建口号大全
2015/12/25 职场文书