不測的祕密:精準測試之路----讀書筆記(第五章)
阿新 • • 發佈:2019-01-10
五、精準化測試第三式:度量和分析閉環
1、如何衡量測試精準度:初步想法用程式碼覆蓋率來體現
程式碼覆蓋率:用來衡量程式碼被覆蓋程度的一種度量方式
-
- 語句覆蓋:度量被測程式碼中每個可執行語句是否執行到了
- 判定覆蓋:度量程式中每一個判定的分支(分支真、假)是否都被執行到了
- 條件覆蓋:度量判定中每個子表示式結果(每個子表示式真、假)是否被測試到了
- 判定/條件覆蓋:度量每個判定分支的結果,每個子表示式的結果是否被執行到了
- 路徑覆蓋:度量程式中每條路徑是否被覆蓋到了
2、精準測試的過程--分析閉環
-
- 測試分析:通過差異化的測試分析得到測試範圍集合
- 測試執行:手工執行用例
- 程式碼覆蓋率統計:工具自動收集(全量程式碼覆蓋不推薦,推薦差異化程式碼覆蓋,又名增量程式碼覆蓋)
- 覆蓋率結果分析:需人工分析
- 反饋調整:根據分析的結果,對於應覆蓋沒覆蓋的程式碼,需補充用例;對於無需覆蓋的程式碼,記錄下來,為下次測試分析提供參考
3、程式碼覆蓋率工具原理
採集器原理
-
- 建立除錯會話
- 處理除錯事件
- 設定採集樁
- 斷點命中,記錄覆蓋資訊
- 上報覆蓋資訊