我有一个标准的CruiseControl.Net设置,可以从svn中提取代码,构建,测试并生成测试结果。我有一个间歇性的问题,即构建报告成功(绿色),但测试结果显示1或2个失败。
手动运行任务步骤,仅运行NUnit步骤,成功但输出和测试结果显示测试失败。我已经尝试了ContinueOnFailure的真和假(它在其他选项上爆炸,并且表明只有真或假是有效值,我假设因为旧版本)。
任务是否应该出错(错误!= 0)?或者是否可能在ccnet.config的合并测试结果步骤中获得失败?
ccnet依赖于NUnit任务是否无法指示构建失败?
谢谢。
答案 0 :(得分:0)
我的理解是(“默认”)它只会生成test-results.xml,并将它们放在“uber.xml”文件中以显示结果。
http://build.sharpdevelop.net/ccnet/doc/CCNET/Using%20CruiseControl.NET%20with%20NUnit.html
并且可以通过以下方式覆盖:
<!-- Acceptance Test Assembly -->
<exec program="nunit-console.exe" failonerror="false" resultproperty="testresult.acceptancetestassembly">
<arg value="AcceptanceTestAssembly.dll" />
<arg value="/xml=AcceptanceTestAssembly-Results.xml" />
</exec>
<!-- Check the results and fail if necessary -->
<fail message="Failures reported in unit tests." unless="${int::parse(testresult.unittestassembly)==0}" />
<fail message="Failures reported in acceptance tests." unless="${int::parse(testresult.acceptancetestassembly)==0}" />