繁体   English   中英

SVN上的自动JUnit检入

[英]Automatic JUnit on SVN checkin

我正在使用IntelliJ-Idea编写Java守护程序。 我们使用JUnit对代码进行单元测试,并希望在签入到Subversion时自动运行。

有没有可用的工具可以自动运行单元测试,然后通过电子邮件将报告发送给Hobbit

我们使用Hudson作为我们的持续集成服务器。 您可以设置作业以特定的时间间隔轮询SCM并在其上运行Ant任务。 我们具有设置,可以在检测到SVN的新更改时运行构建和测试目标,如果构建或测试目标失败,则将电子邮件发送给与项目有关的人员。

我认为您应该像其他人一样建议进行持续集成。 我亲自尝试过CruiseControl和Hudson,并且更喜欢Hudson。 您可以下载并运行它以查看是否喜欢它,配置非常简单,只需:

  1. http://hudson.dev.java.net下载hudson.war。
  2. 在独立模式下运行它(java -jar hudson.war)。
  3. 将浏览器指向http:// localhost:8080进行配置和使用。

如果您使用了它们,它对Maven和Ant具有内置的支持,但是如果没有,则可以简单地编写自己的批处理文件/ shell脚本。

如果不能进行持续集成,则可以考虑使用Subversion提交后挂钩( http://svnbook.red-bean.com/en/1.0/svn-book.html#svn-ch-5-第2.1节 )。 对于您所描述的目的,我没有使用钩子的经验,因此在这里我真的不能提供很多帮助。

我们对所有Java项目都使用TeamCity。 通常,我们将junit与maven一起使用,并且TeamCity已经拥有一个maven2运行程序,因此设置新的构建任务很容易。

您告诉TeamCity您的SVN干线在哪里,然后选择一个跑步者。

如果您已经使用IntelliJ,则有一个TeamCity插件,因此在提交时测试通过时,您可以立即获得反馈。 如果您真的很懒,可以在提交时选择远程运行,然后选择“仅在测试通过时提交”。

最后一点。 TeamCity不仅限于运行Java测试,我们还使用它来运行python单元测试。

每当将更改提交到Subversion时,我们就使用CruiseControl自动构建项目并运行单元测试。 可以将其配置为在构建/单元测试失败时发送电子邮件通知。

不确定Hobbit,但TeamCity是另一个不错的Continuous Integration服务器。 可以将其配置为在Subversion提交上运行,并具有不错的IntelliJ插件。 它也会发送电子邮件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM