我想以编程方式运行特定的 JUnit 测试方法。我知道我可以使用以下代码片段运行整个测试:
Class<?> test = Class.forName("MyTestClass");
JUnitCore junit = new JUnitCore();
Result result = junit.run(test);
但是,我想在这个包含多个方法的测试类中运行一个特定的方法。
如果我可以控制 setUp/tearDown 行为,那也太棒了。
谢谢
有一个重载的JUnitCore#run方法版本,它接受Request
. 虽然Request
有Request#method工厂方法来:
创建一个请求,在处理后将运行单个测试。这是通过过滤掉所有其他测试来完成的。此方法用于支持重新运行单个测试。
如果您需要控制#setUp
/ #tearDown
(即,标有@Before
和/或@After
注释的方法),您可以扩展类并覆盖您需要更改的方法。