缺陷趨勢分析可以幫助測試管理人員調整測試策略,幫助項目決策是否要結束測試。
一.累積缺陷發現統計
1.1.累積發現缺陷曲線的理想情況:
- 累積缺陷發現曲線理想情況下遵循凹凸曲線的變化規律。在凹函數和凸函數的拐點處代表缺陷發現已經出現乏力,需要調整測試策略,使得缺陷的發現保持原有的節奏,這個和缺陷發現率的倒浴盆曲線對應(盆地階段也代表需要不斷調整測試策略讓缺陷發現率保持在一個持續穩定的水準)。
關於倒浴盆曲線還可以參考《軟件測試經驗與教訓》的經驗267:“根據產品成熟度確定測試策略”
1.2.累積發現曲線拐點出現的過早:
可能存在的問題:
- 測試團隊的人員變動,人力減少。
- 版本出現阻塞問題,阻礙了缺陷的發現。
- 當前的測試策略存在問題,使得測試並不能有效的發現缺陷。
1.3.累積發現曲線拐點並未出現:
**可能存在的問題**: - 持續走低:人員技能需要提高,測試工具的改進,測試方案的調整。
- 持續走高:
a. 版本質量太差;b.測試人員做了大量未在測試策略中定義的自主的測試,發現很多測試。在做“剛剛好的測試”的原則下如果發現發現了很多確實對項目有價值的缺陷,要考慮在下一個測試周期加強迴歸測試,針對已經發現的缺陷進行進一步探索。
二.缺陷是否收斂
2.1判斷缺陷收斂的條件:
- 累積缺陷發現曲線轉變爲凸函數
- 累積缺陷發現曲線與累積缺陷解決曲線越來越靠近,最後趨於一點。
2.2缺陷不收斂可能的情況:
2.2.1累積缺陷發現曲線與累積缺陷解決曲線越拉越開:
開發團隊的修改缺陷的節奏已經跟不上測試缺陷提交的節奏。
對策:做好代碼改動控制
- 嚴格控制代碼改動,非必要不改動。
- 做好代碼靜態檢查。
- 做好代碼改動相關的波及分析和自測。
- 也有可能是當前測試策略不適合當前的開發階段
(比如,項目初期測試人員爲了缺陷和績效就做了大量的異常測試)
2.2.2累積缺陷發現曲線還在凹函數階段累積缺陷解決曲線已經與其靠攏。
開發團隊解決缺陷的節奏快與測試團隊問題發現的節奏,雖然曲線已經靠攏但也不算收斂
對策
- 加強測試執行力度。
- 如果是因爲測試策略導致問題未能有效暴露,及時調整測試策略。
- 測試人員測試能力的提升。
—-《測試架構師修煉之道》學習筆記