一、介绍
- untitest框架是专门用来进行执行代码测试的框架
- untitest是python自带的单元测试包,被各种框架引用,比如django
- unittest很多用法和django自带的单元测试差不多,因为Django的TestCase继承了Python的unittest.TestCase
特点:
- 能够组织多个用例去执行
- 提供丰富的断言方法
- 提供丰富的日志与测试结果
核心要素:
- TestCase
- TestSuite
- TextTestRunner
- Fixture
1、TestCase
说明:一个TestCase就是一条测试用例,就是一个完整的测试流程
- 新建类继承自
unittest.TestCase
- 测试的方法以
test
开头
2、TestSuite
说明:测试套件是把多条测试用例集合在一起,就是一个TestSuite
- 实例化 suite 对象
suite = unittest.TestSuite()
- 将测试用例添加到 suite 中
suite.addTest(MyTest('test_xxx'))
3、TestTestRunner
说明:测试执行是用来执行测试用例套件
- 实例化 runner 对象
runner = unittest.TextTestRunner()
- 执行测试套件
runner.run(suite)
案例
from unittest import TestCase from unittest import TestCase from unittest import TestSuite, TextTestRunner class TestCase01(TestCase): def test_01(self): print("01 执行") def test_02(self): print("02 执行") def test_03(self): print("03 执行") if __name__ == '__main__': suite = TestSuite() # 添加要执行的测试用例 suite.addTest(TestCase01('test_01')) suite.addTest(TestCase01('test_02')) suite.addTest(TestCase01('test_03')) # 创建runner runner = TextTestRunner() runner.run(suite)
运行结果
$ python test_1_case.py 01 执行 .02 执行 .03 执行 . ---------------------------------------------------------------------- Ran 3 tests in 0.000s OK