• 單元測試代碼及設計文檔
為了保證單元測試工作產品的準確性,需要對測試代碼和腳本進行走讀或檢視,對測試文檔進行評審。這些工作產品應該納入到配置管理,對于其修改要走配置變更流程,并及時發布其配置狀態,這樣可以保持單元測試工作產品的一致性和可回溯性。
• 必須制訂覆蓋率指標和質量目標來指導和驗收單元測試
單元測試必須制訂一定的覆蓋率指標和質量目標,來指導單元測試設計和執行,同時作為單元測試驗收的標準。設計用例時,可針對要達到的覆蓋率指標來設計用例,而在測試執行時,可以依據覆蓋率分析工具分析測試是否達到了覆蓋率指標,如果沒達到,需要分析哪些部分沒有覆蓋到,從而補充用例來達到覆蓋率指標。而單元測試質量目標的制訂,需要符合軟件企業的實際過程能力,這依賴于軟件企業以前單元測試過程度量數據的積累,不能憑空制造出來。有了以前度量數據的積累,完全可以了解當前組織的單元測試能力,例如單元測試每千行代碼發現的缺陷數是多少。如果單元測試統計結果沒有落到這個質量目標范圍內,說明單元測試過程中某些方面存在一些問題,需要對過程進行審計后找出問題原因進行改進。
這些指標確定下來后,一定要嚴格推行。會有一些測試人員找出各種理由證明覆蓋率指標達不到等等,這需要 QA 根據實際情況分析指標是否合理。實際證明有一個相對簡單的標準也比沒有標準要好得多,我們的實踐發現,通過推行硬性指標,單元測試發現的問題數目比沒有標準前至少增加了 2 倍。
下面是印度 SASKEN 公司的質量目標:
階段 |
組織目標 |
目標上限 |
目標下限 |
HLD (概要設計) |
50 Major Defects / 100 pages |
55 Major Defects/100 pages |
45 Major Defects /100 pages |
LLD(詳細設計) |
40 Major Defects / 100 pages |
44 Major Defects/100 pages |
36 Major Defects / 100 pages |
Unit Test Plan (單元測試計劃) |
25 Major Defects / 100 pages |
27.5 Major Defects /100 pages |
22.5 Major Defects / 100 pages |
Code Review (代碼走讀) |
20 Major Defects / KLOC |
22 Major Defects / KLOC |
18 Major Defects / KLOC |
Defects during Unit test(單元測試) |
15 Major Defects / KLOC |
16.5 Major Defects / KLOC |
13.5 Major Defects / KLOC |
Defects during Integration test(集成測試) |
6 Major Defects / KLOC |
6.6 Major Defects / KLOC |
5.4 Major Defects / KLOC |
詳細設計是單元測試的主要輸入,詳細設計文檔的質量將直接影響到單元測試的質量,所以一定要加強詳細設計文檔的評審,特別是要寫相關測試方案和進行測試用例設計的人員,一定要從寫測試用例的角度看這個詳設是否符合要求,否則后期進行單元測試設計時會發現無法依據詳細設計進行單元測試設計。軟件組織可以將詳細設計評審的要點以查檢表的形式固化下來,這樣在詳細設計評審的時候依據查檢表一項項檢查,既提高了評審效率,也能保證評審效果。評審流程需要確定如果不滿足查檢表 n% 以上的條件,被評審詳細設計文檔就不能通過,需要重新設計。
文章來源于領測軟件測試網 http://www.kjueaiud.com/