首页 > 编程知识 正文

unittest框架原理(python测试用例)

时间:2023-05-06 06:28:48 阅读:66274 作者:4554

作为开发者,对编写的代码进行单元测试是最基本的

对于python语言来说,其单元测试的利器是pyUnit,这已从Python2.1及更高版本开始提供。

用基本的例子说明unittest的使用方法。

首先是简单的功能。

area.py

classArea:

def__init__(self,width=100,length=100 ) :

self._width=width

self._length=length

efgetwidth(self ) :

returnself._width

def getlength (自) :

returnself._length

efgetarea(self ) :

returnself._width*self._length

defsetwidth(self,width ) :

ifwidth=0:

raiseValueError,' IlleageWidthvalue '

self._width=width

defsetlenth (自,长度) :

iflength=0:

raiseValueError,' IlleageLengthvalue '

self._length=length

ut_area.py

fromareaimportArea

导入单元

classareatestcase (unittest.test case ) :

defsetup(self ) :

self.area=Area (

efteardown(self ) :

self.area=None

deftestarea (自) :

self.assert equal (self.area.getarea (),10000 ) )。

deftestwidth (自) :

self.Area.setwidth(10 )。

self.assert equal (self.area.getwidth (),10 ) )。

预设长度(自) :

self.Area.setLenth(10 ) )。

self.assert equal (self.area.getlength (),10 )。

if__name__=='__main__':

unittest.main (

看看单元测试的结果吧。

单元测试也可以通过以下方法来实现

首先,我们的测试类由unittest.TestCase继承。 如果采用动态测试方法,请为需要测试的每种方法创建测试方法,然后使用assertEqual, 然后,将我们的所有测试放入容器中,最后使用Unittest.textteest

suite=unittest.TestSuite (

suite.addtest (area test case (' testarea ' ) )

suite.addtest (area test case (' test width ' ) )

suite.addtest (area test case (' test length ' ) ) ) ) ) )。

runner=unittest.TextTestRunner ()

runner.run(suite ) ) ) )。

打印' # ' * 80

unittest.main (

我们比较了两种方法,结果是一样的。

以下函数可用于TestCase

官方资料: http://docs.python.org/library/unittest.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。