如何有效評估軟件測試用例的質量?
軟件測試用例質量的評估,可以考慮下面3個方面的因素:
第一,根據測試用例的形式評估其質量,主要包括:
1)測試用例與需求規格說明中需求條目的可追溯性,例如:我們要求每個需求條目至少有1個測試用例與之對應。目的是為了評估測試的需求覆蓋率,以及分析需求發生變更的時候,對測試修改工作的影響程度;
2)測試用例有無明確的期望結果。通常來說,測試用例的每個執行步驟,都應該明確描述期望的結果,以保證測試人員可以與測試實際結果進行比較,并分析是否需要提交缺陷報告,或者修改測試用例。
3)是否滿足公司內部定義的測試用例模板。例如:每個公司都可能定義了測試用例模板,比如定義了“測試類型”,要求每個測試用例和測試類型進行關聯,并要求每個功能的測試用例需要覆蓋所有的測試類型,例如:可移植性、互操作性、穩定性等。
第二,根據測試用例覆蓋率評估其質量,主要包括:
1)需求的覆蓋率,例如:我們主要負責系統測試級別,因此測試用例的需求覆蓋率要求必須達到100%。
2)質量特性的覆蓋率,例如:我們在測試用例模板中采用測試類型的概念,要求每個功能的測試用例,必須100%覆蓋所有的測試類型。而測試類型的定義,參考了ISO 9126質量模型,以前缺陷的分析,需求條目的分析等。
3)測試平臺的覆蓋率,例如:針對我們目前的通信產品,每個功能都需要在不同平臺上運行,例如:不同的網元類型、接口類型、業務類型等。測試用例的對這些平臺的覆蓋率,也要求達到100%。
第三,根據測試用例的有效性評估其質量,主要包括:
1)測試用例的缺陷發現率,我們采用的計算方法是“系統測試發現的缺陷數目除以執行的測試用例數目,而得到的百分比”。
2)腳本化測試的缺陷發現率,我們采用的計算方法是“根據測試用例步驟發現的缺陷數目/總發現的缺陷數目,得到的百分比”。假如這個百分比很低,說明設計的測試用例有效性方面比較差,而通過探索性測試發現的缺陷比例更高。
3)遺漏到用戶現場的缺陷率,我們采用的計算方法是“6個月內用戶現場反饋的缺陷數目,除以系統測試級別發現的缺陷數目與6個月內用戶現場反饋的缺陷數目之后,得到的百分比”。
每個公司和測試團隊在評估測試用例質量方面會存在不同的度量指標,基本的要求是這些度量指標簡單容易收集,并且有利于改進測試過程和測試團隊的測試能力,但切記不會針對測試人員個人的能力與績效的評估。