Java 如何动态添加/删除测试规则?
我已经编写了一个Java 如何动态添加/删除测试规则?,java,unit-testing,junit,rule,Java,Unit Testing,Junit,Rule,我已经编写了一个TomcatRunner,并将其用作。那很好。它在执行测试类之前启动tomcat,然后关闭它 现在,我想在另一个场景中使用相同的integratoin单元测试,在这个场景中,不需要启动/停止tomcat,因为可以假设它已经在运行 是否有方法根据系统属性或某些其他配置信息动态添加/删除规则 public class MyTest { /** * I'd like to add/remove this based on configuration values.
TomcatRunner
,并将其用作。那很好。它在执行测试类之前启动tomcat,然后关闭它
现在,我想在另一个场景中使用相同的integratoin单元测试,在这个场景中,不需要启动/停止tomcat,因为可以假设它已经在运行
是否有方法根据系统属性或某些其他配置信息动态添加/删除规则
public class MyTest {
/**
* I'd like to add/remove this based on configuration values.
*/
@ClassRule
public static final TomcatRunner tomcatRunner = new TomcatRunner();
@Test
public void thatClientCallWorksAsExpected() throws Exception {
// test code
}
}
“在其他场景中使用相同的集成单元测试”是什么意思?是否要使用相同的测试代码?是。但是它不应该有规则,因为tomcat总是在运行。为什么不在
TomcatRunner
中执行System.getProperty(“tomcat\u running”)
或类似的操作呢?这就是我实际上在做的。但如果不需要的话,我宁愿把它放在那里。