TestSuite类

2022-08-04 15:39 更新

class unittest.TestSuite(tests=())

这个类代表了单个测试用例和测试套件的集合。该类提供了测试运行器所需的接口,以使其可以像其他任何测试用例一样运行。运行TestSuite实例与遍历套件相同,单独运行每个测试。

如果给出了测试,它必须是可用于最初构建套件的单个测试用例或其他测试套件的迭代。还提供了其他方法,以便稍后将测试用例和套件添加到集合中。

TestSuite对象的行为与TestCase对象非常相似,只是它们并未实际执行测试。相反,它们用于将测试聚合到应该一起运行的测试组中。一些额外的方法可用于向TestSuite实例添加测试:

  • addTest(test)

添加TestCase或TestSuite套件。

  • addTests(tests)

将迭代TestCase和TestSuite实例中的所有测试添加到此测试套件。

这相当于迭代测试,调用addTest()每个元素。

TestSuite共享以下方法TestCase:

  • run(result)

运行与此套件相关的测试,将结果收集到作为结果传递的测试结果对象中。请注意,与之不同TestCase.run(),TestSuite.run()需要传入结果对象。

  • debug()

运行与此套件相关的测试而不收集结果。这允许将测试引发的异常传播给调用者,并且可以用来支持在调试器下运行测试。

  • countTestCases()

返回此测试对象表示的测试数量,包括所有单个测试和子套件。

  • __iter__()

按a分组的测试TestSuite总是通过迭代进行访问。子类可以懒惰地提供覆盖测试__iter__()。请注意,此方法可能在单个套件上多次调用(例如,在计算测试或比较相等时),因此重复测试返回的测试必须相同。

在版本2.7中更改:在早期版本中,TestSuite直接访问测试而不是迭代,所以覆盖__iter__()不足以提供测试。

在TestSuite对象的典型用法中,该run()方法由一个TestRunner而不是由最终用户测试工具调用。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号