如果有一個項目具有作爲構建機器上的構建過程的一部分執行的測試,如果一組測試失敗,整個構建是否會失敗?
回答這個問題時應該考慮什麼?這些測試失敗了嗎?促使這個問題如果失敗的測試會使連續構建失敗?
背景資料:
目前我的工作有NUnit測試,完成作爲構建過程的一部分,我們的cruise control .net構建機器上執行一個項目。
該項目用於設置,以便如果任何測試失敗,構建失敗。推理是如果測試失敗,這意味着產品不能正常工作/不完整/項目失敗,因此構建失敗。
我們已經添加了一些測試,雖然他們失敗了,但他們對項目並不關鍵(詳情見下文)。所以如果這些測試失敗了,那麼這個項目並不是完全失敗,我們仍然希望它能夠建立。
其中一個通過的測試驗證不正確的參數導致異常,但測試未通過的是檢查所有允許的參數是否爲而非導致異常的測試。所以班級拒絕所有無效的案件,但也有一些有效的案件。這對於這個項目來說並不是問題,因爲被拒絕的有效論據是應用程序不會依賴的邊緣案例。
+1:「附帶案件」不是理由。修復代碼或修復測試。 – 2009-01-30 14:09:39