相关疑难解决方法(0)

如何使用JUnit4以编程方式执行测试套件?

我试图使用API​​调用JUnit测试套件.我知道您可以使用以下方法来配置测试类:

@RunWith(Suite.class)
@Suite.SuiteClasses({
  Test1.class,
  Test2.class, ...
})
Run Code Online (Sandbox Code Playgroud)

但是,有没有办法使用Java API触发整个套件,例如使用JUnitCore?

例如,您可以使用以下代码触发测试:

Runner r = 
try {
  r = new BlockJUnit4ClassRunner(Class.forName(testClass));
} catch (ClassNotFoundException | InitializationError e) {
  // handle
}
JUnitCore c = new JUnitCore();
c.run(Request.runner(r));
Run Code Online (Sandbox Code Playgroud)

更新:

从API,似乎Suite类本身是一个跑步者,因此以下代码似乎工作:

Suite suite = new Suite(klass, new RunnerBuilder() {
... // Implement methods
});
JUnitCore c = new JUnitCore();
c.run(Request.runner(suite));
Run Code Online (Sandbox Code Playgroud)

但我不确定这是否是推荐的方法,或者如果编写上述代码有任何缺点.

junit automated-tests junit4 test-suite

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

automated-tests ×1

junit ×1

junit4 ×1

test-suite ×1