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基于PycURL实现POST的方法
Jul 25 Python
python实现外卖信息管理系统
Jan 11 Python
Python实现修改文件内容的方法分析
Mar 25 Python
python实现基于朴素贝叶斯的垃圾分类算法
Jul 09 Python
pygame实现俄罗斯方块游戏(AI篇1)
Oct 29 Python
Python 类的魔法属性用法实例分析
Nov 21 Python
Python创建空列表的字典2种方法详解
Feb 13 Python
Pytest mark使用实例及原理解析
Feb 22 Python
浅谈tensorflow 中的图片读取和裁剪方式
Jun 30 Python
详解Python中的文件操作
Jan 14 Python
用Python爬取某乎手机APP数据
Jun 15 Python
pycharm安装深度学习pytorch的d2l包失败问题解决
Mar 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
打造计数器DIY三步曲(下)
2006/10/09 PHP
PHP生成便于打印的网页
2006/10/09 PHP
PHP实现的MongoDB数据库操作类分享
2014/05/12 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
php curl中gzip的压缩性能测试实例分析
2016/11/08 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
php图片合成方法(多张图片合成一张)
2017/11/25 PHP
PHP5.0~5.6 各版本兼容性cURL文件上传功能实例分析
2018/05/11 PHP
js模拟select下拉菜单控件的代码
2013/05/08 Javascript
Jquery获取复选框被选中值的简单方法
2013/07/04 Javascript
jQuery动态添加删除select项(实现代码)
2013/09/03 Javascript
jQuery避免$符和其他JS库冲突的方法对比
2014/02/20 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
2014/04/10 Javascript
谈谈JavaScript的New关键字
2016/08/26 Javascript
node+experss实现爬取电影天堂爬虫
2016/11/20 Javascript
jquery实现轮播图效果
2017/02/13 Javascript
Vue.js结合bootstrap实现分页控件
2017/03/10 Javascript
jQuery实现Select下拉列表进行状态选择功能
2017/03/30 jQuery
微信小程序实现表单校验功能
2020/03/30 Javascript
集合Bootstrap自定义confirm提示效果
2017/09/19 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
2018/11/10 Javascript
vue-cli设置css不生效的解决方法
2020/02/07 Javascript
vue-video-player实现实时视频播放方式(监控设备-rtmp流)
2020/08/10 Javascript
浅析python 中__name__ = '__main__' 的作用
2014/07/05 Python
Python中用于计算对数的log()方法
2015/05/15 Python
TensorFlow 合并/连接数组的方法
2018/07/27 Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
2020/10/15 Python
HTML5 video视频字幕的使用和制作方法
2018/05/03 HTML / CSS
资源工程专业毕业生求职信
2014/02/27 职场文书
党代会心得体会
2014/09/04 职场文书
国际贸易本科毕业生求职信
2014/09/26 职场文书
授权委托书(法人单位用)
2014/09/29 职场文书
捐资助学感谢信
2015/01/21 职场文书
捐助感谢信
2015/01/22 职场文书
捐款通知怎么写
2015/04/24 职场文书
护理培训心得体会
2016/01/22 职场文书