我們測試的目標是按既定質量標準穩定推進產品研發進度,只做系統測試的結果是:第一次沖水,很有成效,第二次沖水, 還能沖出點鐵銹,第三次就沒什么效果了。采用該手段并不能有效的達成既定質量目標。其次,研發質量改善,不只發現問題,還要定位問題、解決問題。白盒測試 是拆開來洗,發現、定位與解決問題不僅是徹底的,也是直接的,效率非常高,所以,單以發現問題數評估一個測試過程是否有效不盡準確,我們應該綜合評估一個問題從被發現,到定位、解決,以及針對它完成回歸測試的總效率。
下圖來源于Capers Jones與McGraw-Hill的“Applied Software Measurement”文章,從該統計數據可看出,針對一個功能點的測試,若將問題發現、定位與解決都計算進去,單元測試效率最高,是集成測試的2倍,是系統測試的3倍。

認為白盒測試低效的另一個誤解是,決策者并未認清一個bug若遺留到下一階段須多付出多少代價。經驗數據表明,編碼階段的一個問題遺留到驗收測試去解決,所須費用將增加5倍,如下圖,一個問題越遺留到后面階段解決,付出代價就越高,而且是成倍遞增關系。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/