在Eclipse中提交之前自动运行JUnit测试

4
这与这个问题非常相似,但有两个不同之处。
  1. 我想在提交之前运行单元测试,而不是所有时间(接受的答案)。
  2. 该问题的答案和评论似乎表明建议的插件不再受支持。
我试图解决的基本问题很简单:忘记为小的快速更改运行单元测试,而自动化似乎是可能的。

1
我之前提到的另一个问题中的Infinitest,肯定仍然得到支持,而且事实上现在是开源的!:) 但这并没有解决第一个问题... - Tyler
@MatrixFrog:请将此作为答案发布;也许(1)没有一个好的解决方案,但这似乎是一个非常好的插件来评估。 - Andrew White
+1 @MatrixFrog - Infinitest 被许多人认为是最好的 CT 实用工具。 - Jesse Webb
如果你的测试足够快,为什么不一直运行它们呢?这仍然解决了你提到的问题,即在提交之前忘记运行它们。我会使用链接问题中的答案。 - Jesse Webb
@Gweebz:可能会有数百甚至数千个测试,这可能会对许多编辑/保存造成一定的负担。Infinitest似乎可以通过运行哪些测试来解决这个问题。 - Andrew White
2个回答

5
在您提供的问题中,我提到了Infinitest。虽然它不符合您的第一需求,但它只会重新运行可能导致错误的测试(可能它会进行某种智能代码分析--我不知道具体细节),因此您可能仍然会发现它有用。它肯定仍然得到支持,事实上,它现在是开源的!

我没有使用过Infinitest,但值得一提的是,他们声称它可以配置为仅运行受代码更改影响的测试。这样就不会一直运行所有测试。相反,它会确定受到任何更改可能会受影响的代码路径,并重新运行仅相关的测试。如果你问我,这很值得一看... - Jesse Webb
@Gweebz,这正是我所说的“可能已经出错的测试”,但你比我解释得更清楚。如果你愿意,可以编辑我的回答。 - Tyler

0
我试图解决的基本问题是,为了快速进行小改动而忘记运行单元测试,而这似乎是可以自动化的。
如果您的测试速度很快,您可以在每次保存时运行它们。请参阅Misko Hevery的此博客
或者,您可以使用提交挂钩,在接受更新之前运行测试。

有趣。如果SVN钩子能够在本地运行,那么这个想法会很好,但是看起来必须在svn服务器上运行钩子(除非我漏掉了什么)。在保存时进行测试可能已经足够了,但是我需要调整该博客文章以适应Maven,因为它更加面向ant。 - Andrew White

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接