回歸測試最佳實踐(3)

發表于:2014-10-24來源:uml.org.cn作者:鄧 俊寧點擊數: 標簽:回歸測試
Coverage Analysis 中,通過對已被相關測試用例覆蓋的 Method 數量,及未被測試用例覆蓋到的 Method 數量的分析,可以得到基于代碼更新的覆蓋率報告。測試人

  Coverage Analysis 中,通過對已被相關測試用例覆蓋的 Method 數量,及未被測試用例覆蓋到的 Method 數量的分析,可以得到基于代碼更新的覆蓋率報告。測試人員得到這份報告之后,可以找到未被覆蓋到的 Method,并對其進行針對性的開發新的測試用例。以完成對新功能的覆蓋。

  我們可以看到步驟一,二共同服務于測試用例優化選擇和覆蓋率分析兩個模塊。有了測試用例的 Runtime Trace 和 Change Report. 我們可以將 Change 結果與 Runtime Trace 進行匹配,找出能覆蓋程序更改的測試用例。同樣,對于沒有被測試用例覆蓋到的 Change 部分。由于沒有相關測試用例被找出,我們現有的測試用例是不足的,需要針對未被覆蓋到的 Change 部分開發新的測試用例。

  而覆蓋率作為軟件測試的一項重要指標,可以根據已經得到覆蓋和未被覆蓋的 method 進行求解,即已得到覆蓋的 change method 數與總的 change method 之比。

  結果

  基于以上的回歸測試解決方案,我們對一個有著 30 個測試用例的程序進行回歸測試,得到如下測試用例優化選擇分析報表:

  Change Analysis Report

總函數 變更函數 覆蓋數 未覆蓋 覆蓋率
108 12 10 2 83.3%

  表 1 優化選擇測試用例: 3 (of Total 30)

Case Name Cover Changed Method
TestCase001 5 details
TestCase005 3 details
TestCase013 2 details

  分析報告顯示這次代碼變更共有 12 個函數發生了更改。在 30 個測試用例中有 3 個測試用例與這些更改相關,它們覆蓋了這次代碼更改 12 個中的 10 個。而其它 27 的測試用例則與這 12 個代碼改動毫不相關。

  表 2 回歸測試結果分析

全部測試用例 優化選擇 函數變更 覆蓋率分析
已覆蓋 未覆蓋 覆蓋率
30 3 12 10 2 83.3%

  從表中我們可以看到,經過測試用例優化選擇之后,我們選出了 3 個和函數變更相關的測試用例,達到了 83.3% 的覆蓋率。同時由于 27 個與函數變更無關的測試用例不需要重測,使得 90% 的回歸測試資源得到了節省。

原文轉自:http://www.uml.org.cn/Test/200903313.asp

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97