所有测试类的@ClassRule

时间:2019-12-08 18:04:55

标签: java junit

我有ClassRule,例如myRule,我想将此类规则应用于所有测试类。 我使用spring(集成测试)junit 4。

以防万一:我必须在所有类中添加以下语句:

@ClassRule 
public static MyRule myRule = MyImplRule.getInstance();

有没有办法不在所有测试类中编写此语句,而是应用所有测试类?

1 个答案:

答案 0 :(得分:0)

我认为你应该看这里:

How to run a set of code before and after any tests in any class?

适合您的案例的最佳示例是声明一个测试对象:

@RunWith(Suite.class)
@SuiteClasses({ Test1.class, Test2.class })
public class AllTests {
  @ClassRule
  public static MyRule myRule = MyImplRule.getInstance();
}

该解决方案还显示了每种测试运行代码的其他方式。很好。