Python 中的 unit test 流程
Python 中的 unit test 流程
Python 中的 unit test 流程
看了看Python中的单元测试流程, 写了个测试代码来看整体的测试流程
总结如下
一个 test case 类应该派生自 unittest.TestCase正常的的test case的调用顺序为<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KCtfTwOBUZXN0Q2FzZb/J0tTXorLh19S8urXEx+XA7bqvyv0obXlfY2xlYW51cCkuINXiuPbH5cDtuq/K/bvh1Np0ZWFyZG93btauuvOxu7X308MKPHByZSBjbGFzcz0="brush:java;"> def setUp(self): super(MyTestCase, self).setUp() self.addCleanup(self.my_cleanup) 单元测试函数名必须以"test_"开始
def test_case_1(self): print("++++ test case 1")
测试的源代码:
from __future__ import print_function import unittest def setUpModule(): print("setUpModule") def tearDownModule(): print("tearDownModule") class MyTestCase(unittest.TestCase): def setUp(self): super(MyTestCase, self).setUp() self.addCleanup(self.my_cleanup) print() print("++++ setup") def tearDown(self): super(MyTestCase, self).tearDown() print("++++ tearDown") raise Exception() def my_cleanup(self): print("++++ my_cleanup") def test_case_1(self): print("++++ test case 1") def test_case_2(self): print("++++ test case 2") @classmethod def setUpClass(cls): print("setUpClass") @classmethod def tearDownClass(cls): print() print("tearDownClass")
这个程序的运行结果:
setUpModule setUpClass ++++ setup ++++ test case 1 ++++ tearDown ++++ my_cleanup ++++ setup ++++ test case 2 ++++ tearDown ++++ my_cleanup tearDownClass tearDownModule
评论关闭