Python自动单元测试框架
2007-03-30 12:28:08 来源:WEB开发网核心提示: [root@gary source]# tar xzvf pyunit-1.4.1.tar.gz要在Python程序中使用PyUnit模块,最简单的办法是确保PyUni软件包中的文件unittest.py和unittestgui.py都包含在Python的搜索路径中,Python自动单元测
[root@gary source]# tar xzvf pyunit-1.4.1.tar.gz
要在Python程序中使用PyUnit模块,最简单的办法是确保PyUni软件包中的文件unittest.py和unittestgui.py都包含在Python的搜索路径中,这既可以通过直接设置PYTHONPATH环境变量来实现,也可以执行以下的命令来将它们复制到Python的当前搜索路径中:
[root@gary source]# cd pyunit-1.4.1
[root@gary pyunit-1.4.1]# python setup.py install
3.2 测试用例TestCase
软件测试中最基本的组成单元是测试用例(test case),PyUnit使用TestCase类来表示测试用例,并要求所有用于执行测试的类都必须从该类继承。TestCase子类实现的测试代码应该是自包含(self contained)的,也就是说测试用例既可以单独运行,也可以和其它测试用例构成集合共同运行。
TestCase在PyUnit测试框架中被视为测试单元的运行实体,Python程序员可以通过它派生自定义的测试过程与方法(测试单元),利用Command和Composite设计模式,多个TestCase还可以组合成测试用例集合。PyUnit测试框架在运行一个测试用例时,TestCase子类定义的setUp()、runTest()和tearDown()方法被依次执行,最简单的测试用例只需覆盖runTest()方法来执行特定的测试代码就可以了,如例4所示:
例4. static_single.py
import unittest
# 执行测试的类
class WidgetTestCase(unittest.TestCase):
def runTest(self):
widget = Widget()
self.assertEqual(widget.getSize(), (40, 40))
而要在PyUnit测试框架中构造上述WidgetTestCase类的一个实例,应该不带任何参数调用其构造函数:
更多精彩
赞助商链接