Cruise Control .net:使用包并显示NUnit结果

时间:2010-09-16 16:20:13

标签: cruisecontrol.net

经过多次混淆,我终于成功在我们的构建服务器上部署了一个Cruise Control .net实例。 它每隔几分钟轮询服务器,并且仅在检测到svn存储库中的更改时才构建。 对于构建和测试,我使用MSBuild和NUnit的组合。 MSBuild删除所有先前生成的测试结果xml文件,构建项目并运行NUnit。 最后,我使用ccnet.config中的Publisher \ Merge选项将测试结果生成的结果包含到当前的Cruise Control构建结果中

结果非常好。然而,生成的日志是巨大的,很难通过。我在http://ccnetlive.thoughtworks.com/ccnet/server/CCNet%20Live/project/NetReflector/ViewProjectReport.aspx查看了巡航控制器自己的实例,并且构建报告中包含了更多选项,如NUnit结果等。

我尝试从CCnet管理仪表板安装多个软件包,但仪表板上没有显示新安装的软件包。我猜我要做的不仅仅是安装这些软件包,如修补程序配置文件,但我无法弄清楚如何。有没有人有这方面的经验?

1 个答案:

答案 0 :(得分:2)

最好的方法是直接从您的Cruise Control中调用Nunit:

<tasks>
    <msbuild>
       <executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
       <workingDirectory>D:\Compil\src\net-3.5\MyProject\trunk</workingDirectory>
       <projectFile>MyProject.sln</projectFile>
       <buildArgs>/p:Cible="DEV"</buildArgs>
       <targets>Clean;Build</targets>
       <timeout>600</timeout>
       <logger>D:\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger>
   </msbuild>
   <nunit>
       <path>C:\Program Files\NUnit 2.5.7\bin\net-2.0\nunit-console.exe</path>
        <assemblies>
            <assembly>D:\Compil\src\net-3.5\MyProject\trunk\Tester\Tester.exe</assembly>
        </assemblies>
   </nunit>
</tasks>

执行此操作时,您不必手动合并文件,也不必手动删除nunit结果文件。

最后,如果您的报告不适合您,请检查用于创建报告的xsl文件(请参阅Cruise Control .Net not showing Nant build errors

希望这有帮助。