2010-07-21 155 views
0

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

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

这就是为什么我觉得很难: 该项目将涉及许多依赖项。当我将我的项目作为Maven目标测试时,surefire会照顾到这一点。模仿合理的手工努力是很重要的。 测试过程需要足够快的实时编译器(好吧,重新编译整个scala代码是一个可怕的夜马)。

+0

我知道,我受太多影响的Rub way方式。但是,是的,当进行这个测试时,Ruby是太好了。 Scala开发人员对Ruby提供的工具非常渴望。 – 2010-07-21 15:14:41

回答

3

使用在surefire:test魔力

mvn test -Dtest=MyTest 

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

+0

优秀的答案,你已经保存了我的一天。非常感谢。 – 2010-07-21 15:36:47

2

如果你可以自由切换(就像我想象的那样,如果你有一个玩具项目用于学习Scala),你可能会考虑使用SBT而不是Maven。它的IDE集成仅仅是基本的,但它对于运行测试非常方便(它可以观察源代码树并在保存时重新运行测试,或者甚至只是在最后一次运行过程中测试失败。)查看网站http://simple-build-tool.googlecode.com/

+1

这个工具看起来很棒。我一定会尝试。 – 2010-07-22 02:38:55