单元测试框架的基本构造三: 如何制定 case 函数的执行顺序?
- 解决方案: 在 case 函数命名的时候加上序号, 以此来表示执行顺序 (在默认情况下, case 的执行顺序默认按照 case 函数名的字母顺序来执行)
- # encoding=utf-8
- import unittest
- from Calc import Calc
- class MyTest(unittest.TestCase):
- @classmethod
- def setUpClass(self):
- print("单元测试前, 创建 Calc 类的实例")
- self.c = Calc()
- def test_3div(self):
- print("run div()")
- self.assertEqual(Calc.div(8, 2, 4), 1, 'test div fail')
- # 具体的测试用例, 一定要以 test 开头, 执行顺序默认按照字母顺序开头, 可以加上序号来改变 case 函数的执行顺序
- def test_0add(self):
- print("run add()")
- self.assertEqual(self.c.add(1, 2, 12), 15, 'test add fail')
- def test_1sub(self):
- print("run sub()")
- self.assertEqual(self.c.sub(2, 1, 3), -2, 'test sub fail')
- def test_2mul(self):
- print("run mul()")
- self.assertEqual(Calc.mul(2, 3, 5), 30, 'test mul fail')
- if __name__ == '__main__':
- unittest.main() # 启动单元测试
执行结果:
来源: http://www.bubuko.com/infodetail-3510400.html