给出的问题“如何运行属于某个类别的所有测试?”和答案 https://stackoverflow.com/questions/2176570/how-to-run-all-tests-belonging-to-a-certain-category-in-junit-4/2176791#2176791以下方法对于测试组织来说会更好吗?
- 定义包含所有测试的主测试套件(例如使用类路径套件 http://www.johanneslink.net/projects/cpsuite.jsp)
- 设计足够的 JUnit 类别集(足够意味着每个所需的测试集合都可以由一个或多个类别识别)
- 使每个测试符合相关类别
- 根据主测试套件和类别集定义目标测试套件
例子:
- 识别速度类别(慢、快)、依赖项(模拟、数据库、
积分等),函数(填写适用类别), 领域 (填写适用类别), etc.
- 要求每个测试都经过相关类别的适当限定(标记)。
- 使用 ClasspathSuite 创建主测试套件(在类路径中找到的所有测试)
- 通过使用类别限定主测试套件来创建目标套件,例如
模拟测试套件、快速数据库测试套件、Domain X 测试套件的慢速集成等。
我的问题更像是征求这种方法与经典测试套件方法的批准率。一无敌benefit是每个新测试立即包含在相关套件中,无需套件维护。一concern是每个测试的正确分类。
您必须考虑的权衡之一是恕我直言,类别是在测试内定义的,而套件是在外部定义的。这意味着,当您使用套件时,您知道将运行哪些测试,但是当使用类别时,您不知道,除非您检查测试或简单地运行它们。同时,当您使用测试套件查看测试时,您不知道它包含在哪个套件中,除非检查您的套件,但使用类别,您会立即看到它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)