设置与SVN的持续集成

设置与SVN的持续集成

Setting up Continuous Integration with SVN

您将推荐使用哪些工具来设置CI,以使用SVN进行DotNetNuke构建和部署使用DotNetNuke构建的多个网站的源代码控制?

我们目前正在考虑将Cruise Control配置为与NAnt,NUnit,NCover和Trac一起使用作为测试用例。还有哪些其他组合值得研究?

我们对开发环境拥有完全的控制权,因此在这里一定可以使用某种形式的CI,但我也想说服我们的生产服务团队,他们可以使用这些工具可靠地部署到系统测试,测试环境甚至生产环境中。


看看哈德森。它是高度可定制的,而且恕我直言,它比CruiseControl更容易。


我们将CruiseControl与NUnit,NCover,FxCop,SVN结合使用,并编写了一些自定义工具来生成报告。我认为,在过去几年中,它已被证明是一个很好的组合。

令人沮丧的是,MS将其所有集成工具都限制为VSTS。它的测试框架与NUnit一样好,但是您不能使用其代码覆盖率工具或其他任何工具。

我将检查XNuit-它看起来很有前途(但目前缺少UI)。

我们使夜间构建自动化,您也可以使UAT和手动测试构建自动化,但是我不确定我们是否希望将发布自动化到生产服务器。即使有任何更改,也非常重要,以至于无论如何有人都必须注意它。


我将看看Team City http://www.jetbrains.com/teamcity/index.html
我认识一些正在研究这个问题的人,他们对此表示好话。

我的公司的构建过程是在FinalBuilder中完成的,因此我将很快查看他们的服务器。

CC非常好,因为您可以让一个CC服务器监视另一台CC服务器,这样您就可以设置以下内容:当构建服务器上的构建完成时,测试服务器将唤醒,启动虚拟机并进行部署你的申请。这样的东西。


我建议您对构建系统使用带有SVN的NAnt NUnit(NCover)TeamCity进行一下了解。实际上,Pete W \\'s思想书上有一篇非常不错的文章描述了这种配置(对不起,此链接不再存在!)


我们使用运行msbuild脚本的CruiseControl.NET。 Msbuild负责在每次提交时从SVN更新,编译并运行FxCop和NCover / NUnit。


Microsoft通过将其包含在Visual Studio 2008 Professional中并允许在安装了Framework 3.5的命令行中运行测试,从而放松了对测试平台的限制。我们最近为一个客户进行了分频,到目前为止,他们已经能够运行所有测试,而无需使用NUnit。


推荐阅读