java - 使用 TestSuite 跨包收集测试用例

标签 java testing junit

当我们有许多 JUnit4 测试用例分散在许多包中时,将它们放在一个 TestSuite 中是否“好”?像这样:

package my.package.tests;

@RunWith(Suite.class)
@Suite.SuiteClasses({
    my.package.a.testMyService.class,
    my.package.b.testMyBackend.class,
    ...
})

public class AllTests {}

或者,我们能否依靠它来管理我们的测试用例?

最佳答案

就我个人而言,除非在非常特殊的情况下,否则我不使用测试套件。我更喜欢使用通过反射找到测试用例的运行程序,例如 ant junit 任务或 maven surefire/failsafe。这样我就不会忘记向套件添加测试,然后在 2 周后发现它失败了,或者有人“暂时”删除了具有相同结果的测试用例。

我在需要对顺序进行细粒度控制或需要一次又一次运行相同测试的情况下使用测试套件。

关于java - 使用 TestSuite 跨包收集测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8455304/

相关文章:

java - Selenium WebDriver (JAVA) 中 gmail 帐户的电子邮件验证

javascript - 使用 Selenium WebDriver/Jest 进行测试时如何等待函数被调用?

python - 在 python 下的 webdriver 2.4 中,用于 Select 对象的正确导入语句是什么?

java - Jenkins 测试失败

spring - Spring Boot 2 应用程序的 JUnit 5 测试中的模拟 Autowiring 依赖项

java - 如何在java中获取Map中重复键的最新值?

java - 带有 DFC 代码的 Jython

java - 如何使用 hibernate 映射像 Map<Class, AbstractEntity> 这样的属性?

html - 每个测试类的 Gradle html 报告

java - 快速将assertXY语句从JUnit4迁移到Junit5?