2
我使用OpenCover(和ReportGenerator)在我的CI構建過程中檢查我的代碼覆蓋率。我可以從OpenCover獲得代碼覆蓋百分比
如果覆蓋不符合給定的閾值,是否有可能讓OpenCover失敗我的構建?
我環顧四周,但找不到任何方法來實現此目的。我可以窺探生成的報告嗎?
編輯:對不起,我應該提到我正在使用Nant構建腳本。
我使用OpenCover(和ReportGenerator)在我的CI構建過程中檢查我的代碼覆蓋率。我可以從OpenCover獲得代碼覆蓋百分比
如果覆蓋不符合給定的閾值,是否有可能讓OpenCover失敗我的構建?
我環顧四周,但找不到任何方法來實現此目的。我可以窺探生成的報告嗎?
編輯:對不起,我應該提到我正在使用Nant構建腳本。
因爲您還沒有提及您擁有的CI服務器或其用於腳本的用途,我將以一般方式以nant爲例做出響應。
如果CI服務器能夠對XML文檔執行XPath查詢,例如你可以使用xmlpeek task。然後你可以使用下面的查詢來獲取序列的點數
count(//SequencePoint)
這個查詢來獲取訪問序列的點數
count(//SequencePoint[@vc!='0'])
,並從這兩個數字可以得出一個百分比,那麼你可以通過例如失敗構建你可以使用fail task。
你,先生,是一個巫師!感謝堆。 – berko 2012-02-02 04:43:49
讓我感到困惑一點,應該注意的是,如果你的過濾器設置錯誤,你可以得到序列點計數錯誤的結果。通過在過濾器中指定 - [\ *] {Company Prefix}。{DataSet的名稱},我已從覆蓋率度量標準中排除(或認爲我已排除)強類型DataSet。雖然這成功地從篩選中排除了DataSet,但它_did not_不包括表示數據表的DataSet中的嵌套類。添加額外的過濾器值( - [\ *] {Company Prefix}。{DataSet的名稱}/\ *)修正了一些事情。 – 2012-04-05 20:44:26