1、UnitTest基本使用
UnitTest是python自带的一个单元测试框架,用它来做单元测试。
unittest测试用例执行顺序是根据测试方法名称的ASSICC码值的大小来的,升序(a-z)。
1.1、为什么使用UnitTest框架
能够组织多个用例执行
提供丰富的断言方法
能够生成测试报告
1.2、UnitTest核心要素
TestCase(测试用例)
TestSuite(测试套件,把多个TestCase集成到一个测试TestSuite)
TestRunner(执行测试用例)
TestLoader(自动从代码中加载多个测试用例)
Fixture(UnitTest特性)
1.3、TestCase
1、导包: import unittest
2、定义测试类:新建测试类必须集成unittest.TestCase
3、定义测试方法:测试方法名称必须以test开头
4.调用unittest.main()执行测试用例
1.4、TestSuite
(翻译:测试套件)多条测试用例集合在一起,就是一个TestSuite
1、import unittest
导入其他的包含测试用例的py文件
py文件的名称规则与变量名相同
2、suite = unittest.TestSuite() // 实例化unittest.TestSuite对象
(suite为TestSuite实例化的名称)
3、添加用例:suite.addTest(ClassName(“MethodName”))
(ClassName为类名;MethodName为方法名)
只是把测试用例添加到了测试套件中,并不是执行测试用例
4、添加扩展:suite.addTest(unittest.makeSuite(ClassName))
(搜索指定ClassName内test开头的方法并添加到测试套件中)
提示:TestSuite需要配合TextTestRunner才能被执行
1.5、TextTestRunner
TextTestRunner是用来执行测试用例和测试套件的
1、实例化:runner = unittest.TextTestRunner()
2、执行runner.run(suite) //suite:为测试套件命名
import unittest
import testcase
suite = unittest.TestSuite() //实例化unittest.TestSuite对象
suite.addTest(ClassName("MethodName")) //把测试用例添加到了测试套件中
runner = unittest.TextTestRunner() // 实例化TextTestRunner对象
runner.run(suite) //调用run方法