简介:讲解测试套件TestSuite的基本介绍和使用场景
需求:
1、利用unnitest执行流程测试而非单元测试
2、控制unnitest的执行顺序
1、unittest.TestSuite() 类来表示一个测试用例集
1)用来确定测试用例的顺序,哪个先执行哪个后执行
2)如果一个class中有四个test开头的方法,则加载到suite中时则有四个测试用例
3)由TestLoder加载TestCase到TestSuite
4)verbosity参数可以控制执行结果的输出,0 是简单报告、1 是一般报告、2 是详细报告
默认1 会在每个成功的用例前面有个“.” 每个失败的用例前面有个 “F”
2、TextTestRunner() 文本测试用例运行器
3、run()方法是运行测试套件的测试用例,入参为suite测试套件
# -*- coding: UTF-8 -*- import unittest class XdclassTestCase(unittest.TestCase): def setUp(self): self.age = 32 self.name = "小D课堂" print(" setUp method=======") def tearDown(self): print(" tearDown method=======") def test_one(self): print(" test_one 二当家小D 来了") #断言是否相同 self.assertEqual(self.name, "小D课堂",msg="名字不对") def test_two(self): print(" test_two 前端 来了") #断言是否为 true, msg是断言错误的提示信息 self.assertFalse(‘xd‘.isupper(), msg="不是大写") def test_three(self): print(" test_three 后端 来了") self.assertEqual(self.age,32) def test_four(self): print(" test_four 小D课堂官网上线啦 https://www.xdclass.net") self.assertEqual(self.age,32) if __name__ == ‘__main__‘: suite = unittest.TestSuite() suite.addTest(XdclassTestCase("test_two")) suite.addTest(XdclassTestCase("test_one")) suite.addTest(XdclassTestCase("test_three")) suite.addTest(XdclassTestCase("test_four")) #verbosity参数可以控制执行结果的输出,0 是简单报告、1 是一般报告(默认)、2 是详细报告 runner = unittest.TextTestRunner(verbosity=2) runner.run(suite)
运行结果:
>>> ======== RESTART: D:\自动化测试小D课堂\自动化测试资料\其他资料\第7章\第3课\testsuite_demo.py ======== test_two (__main__.XdclassTestCase) ... setUp method======= test_two 前端 来了 tearDown method======= ok test_one (__main__.XdclassTestCase) ... setUp method======= test_one 二当家小D 来了 tearDown method======= ok test_three (__main__.XdclassTestCase) ... setUp method======= test_three 后端 来了 tearDown method======= ok test_four (__main__.XdclassTestCase) ... setUp method======= test_four 小D课堂官网上线啦 https://www.xdclass.net tearDown method======= ok ---------------------------------------------------------------------- Ran 4 tests in 0.170s OK
原文:https://www.cnblogs.com/bashliuhe/p/13264824.html