Java 如何使用JUnit5为项目中的所有测试初始化基类中的静态资源?
给定以下代码:Java 如何使用JUnit5为项目中的所有测试初始化基类中的静态资源?,java,unit-testing,junit5,Java,Unit Testing,Junit5,给定以下代码: 公共抽象类基类{ @以前 public static void beforeAll(){ System.out.println(“Base::beforeAll”); } @毕竟 公共静态无效毕竟(){ System.out.println(“Base::afterAll”); } } 公共类首先扩展基{ @试验 公开无效测试(){ System.out.println(“First::test”); } } 公共类第二扩展基{ @试验 公开无效测试(){ System.out.
公共抽象类基类{
@以前
public static void beforeAll(){
System.out.println(“Base::beforeAll”);
}
@毕竟
公共静态无效毕竟(){
System.out.println(“Base::afterAll”);
}
}
公共类首先扩展基{
@试验
公开无效测试(){
System.out.println(“First::test”);
}
}
公共类第二扩展基{
@试验
公开无效测试(){
System.out.println(“第二个::测试”);
}
}
我希望有以下执行模型:
Base::beforeAll
First::test
Second::test
Base::afterAll
相反,我得到的是:
Base::beforeAll
First::test
Base::afterAll
Base::beforeAll
Second::test
Base::afterAll
我知道BeforeAllCallback
和AfterAllCallback
,但它们只是为生命周期注释提供了回调挂钩,如BeforeAll
和AfterAll
在项目中运行all测试之前,是否有任何方法可以安全地在基类中运行setup方法,然后在整个项目中运行all测试方法之后运行一些分解方法 看起来您可以结合使用
BeforeCallback
和ExecutionContext
来实现这种行为:似乎是