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中使用partial改变方法默认参数实例
Apr 28 Python
Python执行时间的计算方法小结
Mar 17 Python
Python 生成 -1~1 之间的随机数矩阵方法
Aug 04 Python
解决Python中list里的中文输出到html模板里的问题
Dec 17 Python
Python图像处理之gif动态图的解析与合成操作详解
Dec 30 Python
使用Python 统计高频字数的方法
Jan 31 Python
PyCharm-错误-找不到指定文件python.exe的解决方法
Jul 01 Python
Django 模型类(models.py)的定义详解
Jul 19 Python
Tensorflow 实现分批量读取数据
Jan 04 Python
Python sep参数使用方法详解
Feb 12 Python
Keras多线程机制与flask多线程冲突的解决方案
May 28 Python
Python必备技巧之函数的使用详解
Apr 04 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 socket方式提交的post详解
2008/07/19 PHP
php 获取select下拉列表框的值
2010/05/08 PHP
解析php函数method_exists()与is_callable()的区别
2013/06/21 PHP
php获取用户浏览器版本的方法
2015/01/03 PHP
php简单判断两个字符串是否相等的方法
2015/07/13 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
2017/02/16 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
javascript的onchange事件与jQuery的change()方法比较
2009/09/28 Javascript
IE下js调试工具Companion.JS
2010/10/15 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
2014/12/20 Javascript
javascript单页面手势滑屏切换原理详解
2016/03/21 Javascript
Angular.js中用ng-repeat-start实现自定义显示
2016/10/18 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
2016/12/19 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
详解VUE里子组件如何获取父组件动态变化的值
2018/12/26 Javascript
extract-text-webpack-plugin用法详解
2019/02/14 Javascript
JavaScript函数的4种调用方法实例分析
2019/03/05 Javascript
Vue中使用JsonView来展示Json树的实例代码
2020/11/16 Javascript
Python求解平方根的方法
2015/03/11 Python
Python中生成器和yield语句的用法详解
2015/04/17 Python
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
2019/06/05 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
瑞士国际航空官网:SWISS
2016/07/21 全球购物
Move Free官方海外旗舰店:美国骨关节健康专业品牌
2017/12/06 全球购物
美国在线购买和出售礼品卡网站:EJ Gift Cards
2019/06/09 全球购物
某IT外企面试题-二分法求方程!看看大家的C++功底
2015/07/04 面试题
结婚邀请函范文
2014/01/14 职场文书
环保专项行动方案
2014/05/12 职场文书
司法局群众路线教育实践活动开展情况总结
2014/10/25 职场文书
担保书范本
2015/01/20 职场文书
2015年个人工作总结报告
2015/04/25 职场文书
企业法人任命书
2015/09/21 职场文书
《抽屉原理》教学反思
2016/02/20 职场文书
公司转让协议书
2016/03/19 职场文书