在判斷專案的單元測試狀況時,
單元測試涵蓋率也是一個不錯的參考指標,
它可以顯示目前單元測試的覆蓋狀況,
但並不是所有的專案都必須要有100%的單元測試覆蓋率,
而應該是針對重要邏輯一定要涵蓋到。
今天將向大家介紹如何使用Jenkins設定並整合單元測試涵蓋率報表。
※設定專案建置包含Code Coverage
※設定執行單元測試使用設定檔
※設定轉換單元測試結果=>Xml
由於MsTest所產生的單元測試涵蓋率資料為二進位資料,
所以我們必須透過轉換工具將他轉為Xml,再透過Plun In來呈現測試涵蓋率的結果
※將coverage.xml轉換為emma code coverage格式
※使用Emma Code Coverage Plugin呈現結果
※觀看結果
※總結
透過單元測試涵蓋率報表,
我們可以清楚的看到每一隻Class的測試狀況,
還可以從Class、Method、Block、Line四種角度來查看,
檢查重要的邏輯是否有被測試到,
這也是作為提升程式碼品質以及維持程式碼穩定的好方法喔!
關於今天的分享,若有任何問題歡迎大家提問及討論!
請問大大,
如果我是用 C++ 開發呢?
我是用 vstest.console.exe 來測試並且產生 code coverage 檔
我試過,要用 CodeCoverageConverter.vshost.exe 才可以通過
用 CodeCoverageConverter.exe 則會產生 InvalidCoverageFileException
可是我一直卡在 coverage.xml 產生不出來 ~~