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中的http.client模块
Mar 29 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
Apr 25 Python
利用pyinstaller将py文件打包为exe的方法
May 14 Python
Python基于pyCUDA实现GPU加速并行计算功能入门教程
Jun 19 Python
Python使用matplotlib绘制三维图形示例
Aug 25 Python
python3实现多线程聊天室
Dec 12 Python
基于Python打造账号共享浏览器功能
May 30 Python
python实现beta分布概率密度函数的方法
Jul 08 Python
pyecharts绘制中国2020肺炎疫情地图的实例代码
Feb 12 Python
Python实现CAN报文转换工具教程
May 05 Python
Python如何把字典写入到CSV文件的方法示例
Aug 23 Python
Python实现信息管理系统
Jun 05 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实现的获取URL信息的类
2007/01/02 PHP
用PHP实现多服务器共享SESSION数据的方法
2007/03/16 PHP
.htaccess文件保护实例讲解
2011/02/06 PHP
php&amp;mysql 日期操作小记
2012/02/27 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
2013/06/05 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
2017/05/19 PHP
php字符串截取函数mb_substr用法实例分析
2019/06/25 PHP
基于PHP实现微信小程序客服消息功能
2019/08/12 PHP
一个简单的javascript类定义例子
2009/09/12 Javascript
JQuery的ajax获取数据后的处理总结(html,xml,json)
2010/07/14 Javascript
javascript arguments使用示例
2014/12/16 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
JavaScript中this详解
2015/09/01 Javascript
浅析AngularJs HTTP响应拦截器
2015/12/28 Javascript
浅谈js函数的多种定义方法与区别
2016/11/29 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
JS随机排序数组实现方法分析
2017/10/11 Javascript
JS去掉字符串中所有的逗号
2017/10/18 Javascript
vue-router重写push方法,解决相同路径跳转报错问题
2020/08/07 Javascript
[02:37]2018DOTA2亚洲邀请赛赛前采访-EG篇
2018/04/03 DOTA
python 输出一个两行字符的变量
2009/02/05 Python
Python 正则表达式实现计算器功能
2017/04/29 Python
Python3.x对JSON的一些操作示例
2017/09/01 Python
Python探索之pLSA实现代码
2017/10/25 Python
Python栈算法的实现与简单应用示例
2017/11/01 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
2018/03/15 Python
Python django使用多进程连接mysql错误的解决方法
2018/10/08 Python
初入社会应届生求职信
2013/11/18 职场文书
公司面试感谢信
2014/02/01 职场文书
社区服务活动小结
2014/07/08 职场文书
开发房地产协议书
2014/09/14 职场文书
Python实现查询剪贴板自动匹配信息的思路详解
2021/07/09 Python
Java实现房屋出租系统详解
2021/10/05 Java/Android
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
2021/11/11 Python
mysql中整数数据类型tinyint详解
2021/12/06 MySQL