我正在使用unittest
和HTML-testRunner
库来测试我的代码。
在开始每个模块测试之前,我想运行一个setUpModule
函数,最后我想运行一个tearDownModule
函数。所以我的代码看起来像这样:
import HtmlTestRunner
import unittest
def setUpModule():
print 'Running set up module'
def tearDownModule():
print 'Running tear down module'
class TestStringMethods(unittest.TestCase):
""" Example test for HtmlRunner. """
def test_upper(self):
self.assertEqual('foo'.upper(), 'FOO')
def test_fail(self):
""" This test should fail. """
self.assertEqual(1, 2)
如果我运行此代码并调用unittest.main()
方法,则一切运行正常。当我使用HTML-TestRunner时,如下所示:
if __name__ == '__main__':
unittest.main(testRunner=HtmlTestRunner.HTMLTestRunner(output='example_dir'))
我的setUpModule
和tearDownModule
函数不会被调用。
问题是:有没有办法使用HTML-TestRunner
并同时运行setUpModule
和tearDownModule
函数?