python单元测试

单元测试代码如下:

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()


你可能感兴趣的:(python单元测试)