Python自动单元测试框架
2007-03-30 12:28:08 来源:WEB开发网核心提示: 要执行该单元测试,可以使用如下命令:[xiaowp@gary code]$ python text_runner.py运行结果应该如下所示,Python自动单元测试框架(9),表明执行了2个测试用例,并且两者都通过了测试:..--Ran 2 tests in 0.000sOK如果对数据进行
要执行该单元测试,可以使用如下命令:
[xiaowp@gary code]$ python text_runner.py
运行结果应该如下所示,表明执行了2个测试用例,并且两者都通过了测试:
..
----------------------------------------------------------------------
Ran 2 tests in 0.000s
OK
如果对数据进行修改,模拟出错的情形,将会得到如下结果:
.F
==========================================
FAIL: testResize (__main__.WidgetTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "text_runner.py", line 15, in testResize
self.assertEqual(self.widget.getSize(), (200, 100))
File "/usr/lib/python2.2/unittest.py", line 286, in failUnlessEqual
raise self.failureException,
AssertionError: (100, 100) != (200, 100)
----------------------------------------------------------------------
Ran 2 tests in 0.001s
FAILED (failures=1)
默认情况下,TextTestRunner将结果输出到sys.stderr上,但如果在创建TextTestRunner类实例时将一个文件对象传递给了构造函数,则输出结果将被重定向到该文件中。在Python的交互环境中驱动单元测试时,使用TextTestRunner类是一个不错的选择。
PyUnit模块中定义了一个名为main的全局方法,使用它可以很方便地将一个单元测试模块变成可以直接运行的测试脚本,main()方法使用TestLoader类来搜索所有包含在该模块中的测试方法,并自动执行它们。如果Python程序员能够按照约定(以test开头)来命名所有的测试方法,那就只需要在测试模块的最后加入如下几行代码即可:
更多精彩
赞助商链接