2013-10-11 25 views
1

我有一個標準的CruiseControl.Net設置,從svn中提取代碼,構建,測試並生成測試結果。我有一個間歇性的問題,其中構建報告成功(綠色),但測試結果顯示1或2個故障。如果測試失敗,MSBuild腳本的NUnit任務是否會導致任務失敗?

手動運行任務步驟,只運行NUnit步驟,成功但輸出和測試結果顯示測試失敗。我已經嘗試過ContinueOnFailure true和false(它在其他選項上爆炸,並且表示只有true或false是我假設因老版本而產生的有效值)。

任務應該錯誤(錯誤!= 0)?或者是在稍後在ccnet.config的合併測試結果步驟中採購失敗?

ccnet是否依賴NUnit任務無法指示構建失敗?

謝謝。

回答

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