是否有可以完成所有这些的CI服务器软件?

时间:2010-03-11 06:06:50

标签: nunit continuous-integration fxcop stylecop partcover

我正在尝试整合一个将执行以下操作的持续集成服务器:

  1. 使用subversion
  2. 使用NUnit测试(在失败的测试中构建失败)
  3. 使用partcover(基于< X%coverage的失败构建)
  4. 针对FxCop运行代码(在给定设置的情况下,在FxCop警告上构建失败)
  5. 针对StyleCop运行代码(在StyleCop警告,给定设置上构建失败)
  6. 不那么重要:

    1. 能够从sln文件中运行
    2. 能够发布应用程序(已经为项目设置了ClickOnce)
    3. 我现在正在使用TeamCity,它似乎没有3或5,并且它没有最新NUnit的跑步者。

      从hudson所拥有的插件列表中,看起来它可以完成除3之外的所有这些(以及不那么重要的请求)。我考虑过为hudons编写插件来使用partcover,但是这会增加更多时间来设置构建服务器。

2 个答案:

答案 0 :(得分:2)

NAnt可以用作构建脚本,构建项目然后执行NUnit和FXCop。

我在工作中使用的另一个选项是为MSBuild创建一个构建脚本,并使用支持运行FXCop&的MSBuild Community Tasks。 NUnit等等。

因此,对于我的设置,CCNet从SVN下拉源,然后使用主构建文件调用MSBuild。在那里,它构建项目,运行NUnit,NCover,FXCop,StyleCop等,并合并结果,然后显示在CCNet网页上。还可以设置每个任务,以便在构建失败时失败。

我没有使用过TeamCity,但应该有一种方法来下载源代码,然后运行一个MSBuild或NAnt构建脚本,然后处理构建步骤。

答案 1 :(得分:0)

如果它是从sln文件运行的,那么它不是一个持续集成服务器。也许你正在混合构建工具和持续集成。今天,许多CI服务器都不做任何事情,只运行为其他工具(如NAnt或Maven)制作的构建脚本。如果它正是您正在寻找的,请先查看NAnt。 NAnt能够进行构建并执行其他工具,如FXCop(使用NAntContrib库)。您可以使用CI服务器定期运行构建脚本。