代碼質量管理的探索實踐(上)介紹了版本管理和質量檢查的相關工具,本文將爲大家介紹單元測試覆蓋率、質量報告等代碼質量管理的過程。
5、 檢查單元測試覆蓋率的相關技術
單元測試案例寫好了,如何得到執行覆蓋率報告?早期,我們使用的是 maven-cobertura 插件,它通過對代碼編譯後的字節碼做“打樁”處理,爲每行代碼都掛上一個計數器,maven- surefire 插件執行單元測試代碼時,這些計數器就留下了測試代碼的“腳印”,測試結束後將這些計數器進行統計分析得到的報表就是單元測試覆蓋率報告了。
上圖綠色部分代表已經測試覆蓋的代碼,前面的數字分別代表行號和測過的次數,if 分支前面也有執行過的次數,但因分支條件沒有完全覆蓋只能標記爲未覆蓋的紅色。類似的單元測試覆蓋率檢查工具也很多,比如 Emma(JaCoCo 的前身)、JMockit-cover 等工具都提供了 Maven 插件,可以根據具體質量檢查環境的要求配合使用,同時 Emma提供了 Eclipse 插件支持,開發人員可以方便的在運行 JUnit 後在代碼窗口看到覆蓋率結果。
原文鏈接:【https://www.infoq.cn/article/PiEIm00Ym16blbGtxpNJ】。未經作者許可,禁止轉載。