如何在Scala中以编程方式运行JUnit测试

时间:2013-04-23 09:47:53

标签: scala junit

我正在尝试在Scala应用程序中运行JUnit测试。 有没有办法用JUnit做到这一点?

在Java中,我将以编程方式运行这样的JUnit测试:

public org.junit.runner.Result runTest(String test) {
  Class<?> _class = ClassLoader.getSystemClassLoader().loadClass(test);
  org.junit.runner.JUnitCore junit = new org.junit.runner.JUnitCore();
  return junit.run( _class );
}

我可以在Scala中做同样的事吗?

1 个答案:

答案 0 :(得分:2)

所以,我没有JUnit特定的想法,但您是否尝试过从Java直接转换为Scala?

def runTest(test : String) : org.junit.runner.Result = {
  val _class = ClassLoader.getSystemClassLoader.loadClass(test);
  val junit = new org.junit.runner.JUnitCore();
  junit.run( _class );
}

或者,您可以将Java函数编写为实用程序类的静态成员,并从scala中调用它。

val result = JUnitUtils.runTest("my.fully.qualified.TestClassName");