在每次提交后运行您的单元测试套件的最佳方法是什么?
我对您在分支中执行所有功能/更改并保持主干稳定的情况特别感兴趣。
我的源代码控制是 SVN,我使用 tortoise SVN 作为我的客户端。
是否有 SVN 事件或类似的东西可以称为 .cmd/.bat 文件?
如果答案是巡航控制,如何使用巡航控制检查所有分支?
在每次提交后运行您的单元测试套件的最佳方法是什么?
我对您在分支中执行所有功能/更改并保持主干稳定的情况特别感兴趣。
我的源代码控制是 SVN,我使用 tortoise SVN 作为我的客户端。
是否有 SVN 事件或类似的东西可以称为 .cmd/.bat 文件?
如果答案是巡航控制,如何使用巡航控制检查所有分支?
我认为您可能应该在提交之前运行您的单元测试。如果您要在每次提交时进行测试,则应尽早进行以拒绝重大更改。
你可以用subversion hooks做到这一点。如果添加pre-commit
挂钩,则可以在提交发生之前进行构建/测试。挂钩脚本将在服务器上执行。
您需要像 CruiseControl 这样的持续集成服务器。这将监视 svn 的更改,在提交时触发构建,通过测试套件运行跟进它并直接在系统托盘中标记任何错误(或电子邮件或任何您觉得舒服的通知)您需要通过编写来设置 CruiseControl定义项目需求的小脚本(主要是 XML)。推荐。。尝过就回不去了。 这是我当天设置的
更新:我认为没有全局检查所有分支类型的设置。每个分支应该是一个不同的主干 url ......这意味着 CruiseControl 的不同项目。如果您遵循推荐的 subversion 分支方式(请参见此处),由于 CruiseControl 本身似乎正在使用 Subversion 中的分支.. 这似乎是要走的路。
我也会设置一个自动构建/部署过程。查看 Cruise Control - 它可以在部署之前运行单元测试。
使用Buildbot。
这有一个名为 svn_buildbot.py 的实用程序,可以从您的 subversion post-commit 脚本中调用。
Buildbot 已被颠覆(以及许多其他 VC 系统),因此可以配置为从您已提交的分支中提取新修订。它还提供电子邮件通知和 Web 界面,用于状态检查和强制在特定修订/分支上构建。