JUnit 5 中的 Class 级测试注解

Class-level test annotation in JUnit 5

TestNG 有一个很好的功能,即 @Test 注释被添加到测试 class(而不是测试 方法).当注释 class 时,class 上的所有 public 返回 void 的方法都被视为测试方法,根据 documentation.

@Test
public class Test1 {
  public void test1() {
  }
  public void test2() {
  }
}

JUnit 5 是否支持类似的概念? 如果没有,是否有允许扩展 Junit 5 的扩展?

(我找不到关于 JUnit 5 的 class 级别注释的任何讨论,也许我错过了它。必须注释每个方法很容易出错,很可能会忘记注释一个方法,从而使测试不 运行,造成一种错误的自信感。)

更新:现在作为 issue 提出。

不,这在 JUnit 5 中不可用。

在 JUnit 3 中有一段时间,您可以扩展 TestCase class 然后所有以 test* 为前缀的方法将自动成为 运行,但它不仅更容易损坏,而且实际上已被积极弃用,现代框架不会 运行 使用那些旧式测试。