实验2
实验2报告
一、结构化基本路径法的单元测试
程序代码段
折半查找
public int binSearch(int array[],int key){
1 int mid,low,high;
2 low = 0;
3 high = array.length - 1;
4 while(low <= high){
5 mid = (low + high)/2
6 if(key == array[mid])
7 return mid;
8 else if(key<array[mid])
9 high = mid - 1;
10 else
11 low = mid +1;
12 }
13 return -1;
14 }
控制流图
单元测试用例
R1:1-2-3-4-13-14
R2:1-2-3-4-5-6-7-12-4-13-14
R3:1-2-3-4-5-6-8-9-12-4-13-14
R4:1-2-3-4-5-6-8-10-11-12-4-13-14
测试路径 | 输入数据 | 预期输出 |
R1 | array[0]={} key=1 | -1 |
R2 | array[3]={2,4,6} key=4 | 1 |
R3 | array[4]={2,4,6,8} key=2 | 0 |
R4 | array[4]={2,4,6,8} key=6 | 2 |
2.构成等腰三角形的条件:任意两边相等。
3.构成等腰直角三角形的条件:任意两边相等,而且两条边的平方和等于第三边的平方和。
4.构成等边三角形的条件:三条边都相等。
分析一下三角形的等价类:
(1)有效等价类:
输入3个正整数或正小数:
S1:两数之和大于第三数,如A<B+C; B<C+A; C<A+B
S2:两数之和不大于第三数
S3:两数相等,如A=B或B=C或C=A
S4:三数相等,如A=B=C
S5:三数不相等,如A!=B, B!=C, C!=A
(2)无效等价类:
1.空
2.负整数
3.非数字
4.少于三个数
确认测试用例以及测试结构分析和测试结论
用例ID | A | B | C | 预期输出 | 覆盖等价类 |
1 | 2 | 4 | 6 | 非三角形 | S2 |
2 | 3 | 3 | 4 | 等腰三角形 | S3 |
3 | 5 | 5 | 5 | 等边三角形 | S4 |