4

在每次提交后运行您的单元测试套件的最佳方法是什么?

我对您在分支中执行所有功能/更改并保持主干稳定的情况特别感兴趣。

我的源代码控制是 SVN,我使用 tortoise SVN 作为我的客户端。

是否有 SVN 事件或类似的东西可以称为 .cmd/.bat 文件?

如果答案是巡航控制,如何使用巡航控制检查所有分支?

4

4 回答 4

10

我认为您可能应该在提交之前运行您的单元测试。如果您要在每次提交时进行测试,则应尽早进行以拒绝重大更改。

你可以用subversion hooks做到这一点。如果添加pre-commit挂钩,则可以在提交发生之前进行构建/测试。挂钩脚本将在服务器上执行。

于 2008-09-19T04:41:07.963 回答
2

您需要像 CruiseControl 这样的持续集成服务器。这将监视 svn 的更改,在提交时触发构建,通过测试套件运行跟进它并直接在系统托盘中标记任何错误(或电子邮件或任何您觉得舒服的通知)您需要通过编写来设置 CruiseControl定义项目需求的小脚本(主要是 XML)。推荐。。尝过就回不去了。 这是我当天设置的

更新:我认为没有全局检查所有分支类型的设置。每个分支应该是一个不同的主干 url ......这意味着 CruiseControl 的不同项目。如果您遵循推荐的 subversion 分支方式(请参见此处),由于 CruiseControl 本身似乎正在使用 Subversion 中的分支.. 这似乎是要走的路。

于 2008-09-19T04:34:35.467 回答
0

我也会设置一个自动构建/部署过程。查看 Cruise Control - 它可以在部署之前运行单元测试。

http://cruisecontrol.sourceforge.net/

于 2008-09-19T04:34:16.110 回答
0

使用Buildbot

这有一个名为 svn_buildbot.py 的实用程序,可以从您的 subversion post-commit 脚本中调用。

Buildbot 已被颠覆(以及许多其他 VC 系统),因此可以配置为从您已提交的分支中提取新修订。它还提供电子邮件通知和 Web 界面,用于状态检查和强制在特定修订/分支上构建。

于 2008-09-19T08:15:41.647 回答