如果测试失败,MSBuild脚本的NUnit任务是否会导致任务失败?

如果测试失败,MSBuild脚本的NUnit任务是否会导致任务失败?,nunit,cruisecontrol.net,Nunit,Cruisecontrol.net,我有一个标准的CruiseControl.Net设置,它从svn中提取代码,构建、测试并生成测试结果。我有一个间歇性问题,构建报告成功(绿色),但测试结果显示1或2次失败 手动运行任务步骤(仅运行NUnit步骤)成功,但输出和测试结果显示测试失败。我尝试了ContinueOnFailure(true和false)(它在其他选项上爆炸,并指示只有true或false是有效值,我认为这是因为旧版本) 任务是否应该出错(错误!=0)?或者故障是在稍后的ccnet.config的合并测试结果步骤中获得的

我有一个标准的CruiseControl.Net设置,它从svn中提取代码,构建、测试并生成测试结果。我有一个间歇性问题,构建报告成功(绿色),但测试结果显示1或2次失败

手动运行任务步骤(仅运行NUnit步骤)成功,但输出和测试结果显示测试失败。我尝试了ContinueOnFailure(true和false)(它在其他选项上爆炸,并指示只有true或false是有效值,我认为这是因为旧版本)

任务是否应该出错(错误!=0)?或者故障是在稍后的ccnet.config的合并测试结果步骤中获得的

ccnet是否依赖NUnit任务无法指示失败的生成

谢谢。

我的理解是(“默认”)它只会生成test-results.xml,并将它们放在“uber.xml”文件中以显示结果

并且它可以被以下内容覆盖:

<!-- 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}" />