使用Maven分别从命令行运行scala单元测试

时间:2010-07-21 15:12:37

标签: unit-testing maven-2 scala

嗯,当谈到速度时,Maven太好了。 但我想要一些更容易接受的东西。 想象一下,我写了一个测试org.fun.AbcTestCase 在这样的TestCase中,我包含了一些JUnit / TestNG测试 现在我想只运行这个测试用例,从命令行说org.fun.AbcTestCase。 我怎么能这样做?

我知道在Eclipse或IDEA中很容易做到这一点。但是,我正在学习Scala和IDE支持目前很糟糕,特别是在运行单元测试时。

这就是我觉得困难的原因: 该项目涉及许多依赖项。当我将我的项目作为Maven目标进行测试时,surefire会对此进行处理。模仿合理的手动努力很重要。 测试过程需要足够快速的实时编译器(好吧,重新编译整堆scala代码是一个可怕的夜间母马)。

2 个答案:

答案 0 :(得分:3)

使用test parameter mojo

中的surefire:test
mvn test -Dtest=MyTest

将仅运行测试MyTest.class,仅在必要时重新编译(如果找到更改)。

答案 1 :(得分:2)

如果您可以自由切换(正如我想象的那样,如果你有一个玩具项目,你可能会学习Scala),你可以考虑使用SBT而不是Maven。它的IDE集成只是基本的,但它对于运行测试非常方便(它可以在保存时观察源树并重新运行测试,甚至只是在上次运行期间失败的测试。)查看网站{ {3}}。