单元测试代码如下:
import unittest #unittest 一般都内置了 class CMyTest(unittest.TestCase): def setUp(self): def tearDown(self): time.sleep(0.5) self.assertTrue(True) def testSearch1(self): time.sleep(1) self.assertFalse(True, "not false") def testSearch2(self): time.sleep(2) self.assertEqual(True, True, "not equal") def testSearch3(self): time.sleep(3) def testSearch4(self): time.sleep(4)
执行有以下集中方法:
方法一:
在上述脚本中加入如下代码,或者单独写一个,然后import进来上述代码,执行
if __name__ =='__main__': unittest.main()
方法二: 依赖于 http://tungwaiyip.info/software/HTMLTestRunner_0_8_2/HTMLTestRunner.py
import HTMLTestRunner if __name__ =='__main__': testsuite = unittest.TestSuite() testsuite.addTest(CMyTest("testSearch")) testsuite.addTest(CMyTest("testSearch1")) testsuite.addTest(CMyTest("testSearch2")) testsuite.addTest(CMyTest("testSearch3")) filename = 'result.html' fp = file(filename, 'wb') runner = HTMLTestRunner.HTMLTestRunner( stream=fp, title='TestResult', description='TestReport.' ) runner.run(testsuite)
第三种示例,设计全局的环境的建设
import time import unittest class CMarsTest(unittest.TestCase): @classmethod def setUpClass(self): print "This is Global Setup for all cases" @classmethod def tearDownClass(self): print "This is Global Teardown for all cases" def setUp(self): print "This is Setup for every case" def tearDown(self): print "This is Teardown for every case" def testSearch1(self): time.sleep(0.8) def testSearch2(self): time.sleep(1.2) if __name__ =='__main__': ''' python test.py CMarsTest.testSearch3 ''' unittest.main()