Java 我可以在JUnit5中从@beforeach中排除单个测试吗?

Java 我可以在JUnit5中从@beforeach中排除单个测试吗?,java,junit5,Java,Junit5,是否可以在JUnit5中的@之前将单个测试排除在外 请引导我做这件事 谢谢您可以通过检查测试名称来使用和编写此条件: @BeforeEach void init(TestInfo info) { if (info.getDisplayName().equals("mySpecialTestName") { return; // skip @BeforeEach in mySpecialTestName test } } 但是将不需要beforeach的测试移动到单独的类中会更

是否可以在
JUnit5
中的
@之前将单个测试排除在外

请引导我做这件事

谢谢

您可以通过检查测试名称来使用和编写此条件:

@BeforeEach 
void init(TestInfo info) {
  if (info.getDisplayName().equals("mySpecialTestName") {
    return; // skip @BeforeEach in mySpecialTestName test
  }
}

但是将不需要beforeach的测试移动到单独的类中会更干净。

您可以将需要beforeach行为的测试移动到内部的ˋ@Nested'子类中,并将beforeach方法放在那里

使用@Tag而不是name可能会更方便。@IvanLymar这样或那样,它感觉像是对一个过于复杂的测试的攻击class@KarolDowbecki我已经尝试应用你的解决方案,但它似乎不起作用,我做错了什么吗@KarolDowbecki我的类只有3个测试,我认为这很简单,但我可能错了,我在上面的评论中给出了我在Github上的代码链接,请你看看我的测试类好吗?巴尔佐,巴尔佐·普洛泽:)