花花世界蕾 发表于 2015-10-26 13:20:24

Python 中的 unit test 流程

  Python 中的 unit test 流程


  看了看Python中的单元测试流程, 写了个测试代码来看整体的测试流程
  总结如下
  


[*]一个 test case 类应该派生自 unittest.TestCase
[*]正常的的test case的调用顺序为


  
  


[*]子类TestCase可以注册自己的清理函数(my_cleanup). 这个清理函数会在teardown之后被调用

    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
  


  



版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: Python 中的 unit test 流程