UnitTest是Python⾃带的单元测试框架
使⽤unittest 框架 来 管理 运⾏ 多个测试⽤例。
1、TestCase(测试⽤例):每个 TestCase(测试⽤例) 都是⼀个代码⽂件, 在这个代码⽂件中来书写 真正的⽤例代码。
2、TestSuite(测试套件), 管理、组装(打包)多个TestCase(测试⽤例)
3、TestRunner(测试执⾏,测试运⾏), 执⾏ TestSuite(测试套件)
4、TestLoader(测试加载),功能是对 TestSuite(测试套件) 功能的补充, 管理、组装(打包)多个 TestCase(测试⽤例)
5、Fixture(测试夹具), 书写在 TestCase(测试⽤例) 代码中, 是⼀个代码结构,在某些特定的情况下 会自动执行 。
每个⽤例中重复的代码就可以写在 Fixture 代码结构中, 只写⼀遍, 但每次⽤例⽅法的执⾏,都会执⾏ Fixture 中的代码
1、TestCase(
测试⽤例
)
1. 导包 (unittest) :import unittest
2. ⾃定义测试类 :class testdemo(unittest.TestCase):
3. 在测试类中书写测试⽅法 :def test_method1(self):
4. 执⾏⽤例
. 1、 将光标放在 类名的后边 运⾏, 会执⾏类中的所有的测 试⽅法
2 、将光标放在 ⽅法名的后边 运⾏, 只执⾏当前的⽅法
# 1.导包
import unittest
# 2.自定义测试类
# 继承 unittest 模块中的TestCase 类
class testdemo(unittest.TestCase):
# 3.书写测试方法 测试⽅法以test_ 开头
def test_method1(self):
print("111111")
def test_method2(self):
print("222222")
# 4.执行用例
2、3、TestSuite 、TestRunner
1. 导包(unittest) :import unittest
2. 实例化(创建对象)套件对象 :suite=unittest.TestSuite()
3. 使⽤套件对象添加⽤例⽅法 :suite.addTest(testdemo1('test_method1'))
4. 实例化运⾏对象 :runner=unittest.TextTestRunner()
5. 使⽤运⾏对象去执⾏套件对象:runner.run(suite)
# 1. 导包(unittest)
import unittest
from day09.t02 import testdemo1
from day09.t03 import testdemo2
# 2. 实例化(创建对象)套件对象
suite=unittest.TestSuite()
# 3. 使⽤套件对象添加⽤例⽅法
# suite.addTest(testdemo1('test_method1'))
# suite.addTest(testdemo1('test_method2'))
# suite.addTest(testdemo2('test_method1'))
# suite.addTest(testdemo2('test_method2'))
#将⼀个测试类中的所有⽅法进⾏添加
suite.addTest(unittest.makeSuite(testdemo1))
suite.addTest(unittest.makeSuite(testdemo2))
# 4. 实例化运⾏对象
runner=unittest.TextTestRunner()
# 5. 使⽤运⾏对象去执⾏套件对象
# 运⾏对象.run(套件对象)
runner.run(suite)
1. 在 tools 模块中定义 add 函数, 对两个数字进⾏求和计算
2. 书写 TestCase 代码对 add() 进⾏