一、UnitTest
python自带自动化测试框架
1. testcase:测试用例
定义一个实现加法操作的函数,并对函数进行测试
import unittest # 导包
def my_sum(a, b): # 创建测试用例(加法算法)
return a + b
class my_test(unittest.TestCase): # 定义test类,括号里写unittest.TestCase
def test_1(self): # 第一个测试用例
print(my_sum(5, 6))
def test_2(self): # 第二个测试用例
print(my_sum(1, 3))
结果:
2. testsuite:把多个测试用例整合到一个测试套件中
实例化:suite = unittest.TestSuite()
添加用例:suite.addTest(ClassName('"MethodName"))
import unittest
import testcase
suite = unittest.TestSuite() # 实例化
# 调用addTest方法
suite.addTest(testcase.my_test("test_1"))
suite.addTest(testcase.my_test("test_2"))
# 测试用例添加到测试套件中,并不执行测试用例
# 一次性导入所有测试用例
suite.addTest(unittest.makeSuite(testcase.my_test))
3. TextRunner: 执行测试套件
实例化+调用方法
runner = unittest.TextTestRunner() # 实例化textrunner
runner.run(suite) # 调用对象的run方法
4. TextLoader: 查找指定py文件
import unittest
suite = unittest.Testloader().discover("./", "test*.py") # 查找所有包含test的py文件并执行
runner = unittest.TextTestRunner()
runner.run(suite)