基本路径测试案例分析
基本路徑測試案例分析
Q:請使用基本路徑測試對該程序進行測試:
二分查找
public int binSearch(int arr[], int objectValue) {int left = 0;int right = arr.length - 1;int mid;while (left < right) {mid = (right - left) / 2 + left;if (arr[mid] == objectValue) {return mid;} else if (objectValue < arr[mid]) {right = mid - 1;} else {left = mid + 1;}}return -1; }基本路徑測試法的定義
基本路徑測試是一種白盒測試方法,它在程序控制圖的基礎上,通過分析控制構造的環行復雜性,導出基本可執行路徑集合,從而設計測試用例的方法。設計出的測試用例要保證在測試中程序的每一個可執行語句至少執行一次。
1. 畫出程序的流程圖:
2. 將程序流程圖轉換為控制流圖
3、確定環形復雜性度量V(G):
1)V(G)= 4 (個區域)
2)V(G)=E–N+2=11–9+2=4
其中E為流圖中的邊數,N為結點數;
3)V(G)=P+1=3+1=4
其中P為謂詞結點(分支結點)的個數。在流圖中,結點2、4、5是謂詞結點。
步驟3:確定基本路徑集合(即獨立路徑集合)。于是可確定4條獨立的路徑:
路徑1:1-2-9
路徑2:1-2-3-4-9
路徑3:1-2-3-4-5-6-8-2…
路徑4:1-2-3-4-5-7-8-2…
4、為每一條獨立路徑各設計一組測試用例,以便強迫程序沿著該路徑至少執行一次。
輸入:arr={1} objectValue=1
期望結果:傳入數組和目標值,不能使用該方法查到該目標值,返回:-1
Junit單元測試:
路徑2(1-2-3-4-9)的測試用例:
輸入:arr={1,3,5} objectValue=3
期望的結果:傳入數組和目標值,能使用該方法在數組中查到該目標值,返回位置:1
Junit單元測試:
路徑3(1-2-3-4-5-6-8-2…)的測試用例:
輸入:arr={1,3,5} objectValue=4
期望結果:傳入數組和目標值,不能在數組中查到該目標值,返回:-1
Junit單元測試:
路徑4(1-2-3-4-5-7-8-2…)的測試用例:
輸入:arr={1,3,5} objectValue=2
期望結果:傳入數組和目標值,不能在數組中查到該目標值,返回:-1
Junit單元測試:
5、總結
? 基本路徑測試法是在 程序控制流圖 的基礎上,通過分析控制構造的環路復雜性,導出 基本可執行路徑 集合,從而 設計測試用例 的方法,設計出的測試用例要保證在測試中程序的語句覆蓋100%,條件覆蓋100%。路徑覆蓋可以對程序進行徹底的測試,比語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋以及條件組合覆蓋的覆蓋面都要廣。
參考文章
總結
以上是生活随笔為你收集整理的基本路径测试案例分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 搜狗浏览器屏蔽广告插件_“云法庭”里“云
- 下一篇: 6.23jq效果