当前位置:文档之家› 白盒测试-基本路径测试习题

白盒测试-基本路径测试习题

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int i,max=0; int arr[]=new int[5];//设数组大小为5 System.out.println("请输入数组元素:"); for(i=0;i<=arr.length-1;i++) {
(1)void bubbleSort(int a[]){
(2)
for (int i = a.length; --i>=0; ) { //2.1 int i = a.length
(3)
boolean flipped = false; //2.2.1 –-i=0
(4)
for (int j = 0; j<i; j++) { //2.2.2 –-i>0
3.独立路径集 路径 1:2.1-2.2.1-2.2.2-15-16 路径 2:2.1-2.2.1-3-3.1-4.1-4.2-12-13-16 路径 3:2.1-2.2.1-2.2.2-3-3.1-4.1-4.2-5-10-4.3-4.2-12-13-16 路径 4:2.1-2.2.1-2.2.2-3-3.1-4.1-4.2-5-10-4.3-4.2-12-13-2.2.1-2.2.2-15-16 路径 5:2.1-2.2.1-2.2.2-3-3.1-4.1-4.2-5-6,7,8,9-10-4.3-4.2-12-13-2.2.1-2.2.2-15-16 路径 6:2.1-2.2.1-2.2.2-3-3.1-4.1-4.2-5-6,7,8,9-10-4.3-4.2-12-13-16
for (int j = 0; j<i; j++) { if (a[j] > a[j+1]) {
int T = a[j]; a[j] = a[j+1]; a[j+1] = T; flipped = true; } } if (!flipped) { return; } } }
public static void getArray1(int[] arr){ System.out.print("原数组大小排列为:"); for(int i = 0;i < arr.length; i++){ System.out.print(arr[i]+" , "); } System.out.println();
(5)
if (a[j] > a[j+1]) {
//4.1 int j = 0
(6)
int T = a[j];
//4.2 j<i
(7)
a[j] = a[j+1];
//4.3 j++
(8)
a[j+1] = T;
(9)
flipped = true;
(10)
}
(11)
}
(12)
if (!flipped) {
(13)
return;
(14)
}
(15)
}
(16) }
1.程序流程图:
2.1
2.2.1 (--i>0
2.2.2
4.1 4.2
5 6.7.8.9 10
15
3 3
3.1 12 13
4.3
16
流图:
2.1
2.2.1
3
2.2.2
3
4.1
3.1
4.2
12
13 5
4.3
6,7,8,9
10
15
16
2.计算环形复杂度: CC(G)= 6 个区域 CC(G)= 18 条边 – 14 个节点 + 2 = 6 CC(G)= 5 个判定节点 + 1 = 6
arr[i]= Integer.parseInt(br.readLine()); } getArray1(arr); bubbleSort(arr); getArray2(arr); }
public static void bubbleSort(int a[]){
for (int i = a.length; --i>=0; ) { boolean flipped = false;
4.测试用例 路径 1 测试用例:
输入条件:将数组设为 int[0],输入空值 期望结果:null 实际运行结果:
路径 2 测试用例: 输入条件:将数组设为 int[1],输入 5 期望结果:原数组大小排列为:5 冒泡排序后数组大小排列为:5 实际结果:
路径 3 测试用例: 输入条件:将数组设为 int[5],输入 1,3,5,7,9 期望结果:原数组大小排列为:1,3,5,7,9 冒泡排序后数组大小排列为:1,3,5,7,9 实际运行结果:
5.完整运行程序: import jajava.io.IOException; import java.io.InputStreamReader;
public class TestHomework {
public static void main(String[] args) throws NumberFormatException, IOException {
} }
6.总结 通过对冒泡程序进行基本路径测试,不仅巩固了 java 编程,而且熟悉了白盒测试中基
本路径测试法的步骤。通过自己动手去设计测试深深的体会到测试这门技术从理论上看来非 常简单,但是从实践的角度,确实有一定难度,不仅要求有较好的逻辑思维,而且考虑问题 需要面面俱到,有一点疏忽可能就会产生遗漏而造成不可估量的损失。
在作业过程中遇到许多问题,比如程序步骤标号问题、线性独立路径的确定以及在生成 用例时路径覆盖的问题,自己通过网上查询资料或请教老师和同学得到了很好的解决。
总体感觉这次作业收获挺大的,不仅仅是在知识上,更重要的是解决问题的能力得到了 加强。
路径 4 测试用例: 此路径无法覆盖,运行时会走路径 3.
路径 5 测试用例: 输入条件:将数组设为 int[5],输入 9,8,7,6,5 期望结果:原数组大小排列为:9,8,7,6,5 冒泡排序后数组大小排列为:5,6,7,8,9 实际运行结果:
路径 6 测试用例: 输入条件:将数组设为 int[5],输入 12,3,56,8,10 期望结果:原数组大小排列为:12,3,56,8,10 冒泡排序后数组大小排列为:3,8,10,12,56 实际运行结果:
}
public static void getArray2(int[] arr){ System.out.print("冒泡排序后数组大小排列为:"); for(int i = 0;i < arr.length; i++){ System.out.print(arr[i]+" , "); } System.out.println();
相关主题