软件测试第5-6讲byXR课题.ppt

(3) 确定独立路径集合 根据上面的计算方法,可得出四个独立的路径。(一条独立路径是指,和其他的独立路径相比,至少引入一个新处理语句或一个新判断的程序通路。V(G)值正好等于该程序的独立路径的条数。) 路径1:4-14 路径2:4-6-7-14 路径3:4-6-8-10-13-4-14 路径4:4-6-8-11-13-4-14 根据上面的独立路径,去设计输入数据,使程序分别执行到上面四条路径。 (4) 准备测试用例 准备测试用例 为了确保基本路径集中的每一条路径的执行,根据判断结点给出的条件,选择适当的数据以保证某一条路径可以被测试到。 基本路径测试再举例 例5:下例程序流程图描述了最多输入50个值(以–1作为输入结束标志),计算其中有效的学生分数的个数、总分数和平均值。 开始 i =1,n1=n2=0,sum=0 Score[ i ]-1 AND n250 n2=n2+1 n1=n1+1,sum=sum+score[i] Score[ i ]0 AND score[i]100 i = i +1 n10 average=sum/n1 average= – 1 返回 F F F T T T 1 2和3 4 5和6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 11 10 12 R1 R2 R3 R4 R5 R6 开始 i =1,n1=n2=0,sum=0 Score[ i ]-1 AND n250 n2=n2+1 n1=n1+1,sum=sum+score[i] Score[ i ]0 AND score[i]100 i = i +1 n10 average=sum/n1 average= – 1 返回 F F F T T T 1 2和3 4 5和6 7 8 9 10 11 12 步骤1:导出过程的流图。 步骤2:确定环形复杂性度量V(G): 1)V(G)= 6 (个区域) 2)V(G)=E–N+2=16–12+2=6 其中E为流图中的边数,N为结点数; 3)V(G)=P+1=5+1=6 其中P为谓词结点的个数。在流图中,结点2、3、5、6、9是谓词结点。 1 2 3 4 5 6 7 8 9 11 10 12 R1 R2 R3 R4 R5 R6 步骤3:确定基本路径集合(即独立路径集合)。于是可确定6条独立的路径: 路径1:1-2-9-10-12 路径2:1-2-9-11-12 路径3:1-2-3-9-10-12 路径4:1-2-3-4-5-8-2… 路径5:1-2-3-4-5-6-8-2… 路径6:1-2-3-4-5-6-7-8-2… 1 2 3 4 5 6 7 8 9 11 10 12 R1 R2 R3 R4 R5 R6 步骤4:为每一条独立路径各设计一组测试用例,以便强迫程序沿着该路径至少执行一次。 1)路径1(1-2-9-10-12)的测试用例: score[k]=有效分数值,当k i ; score[i]=–1, 2≤i≤50; 期望结果:根据输入的有效分数算出正确的分数个数n1、总分sum和平均分average。 开始 i =1,n1=n2=0,sum=0 Score[ i ]-1 AND n250 n2=n2+1 n1=n1+1,sum=sum+score[i] Score[ i ]0 AND score[i]100 i = i +1 n10 average=sum/n1 average= – 1 返回 F F F T T T 1 2和3 4 5和6 7 8 9 10 11 12 2)路径2(1-2-9-11-12)的测试用例: score[ 1 ]= – 1 ; 期望的结果:average = – 1 ,其他量保持初值。 3)路径3(1-2-3-9-10-12)的测试用例: 输入多于50个有效分数,即试图处理51个分数,要求前51个为有效分数; 期望结果:n1=50、且算出正确的总分和平均分。 开始 i =1,n1=n2=0,sum=0 Score[ i ]-1 AND n250 n2=n2+1 n1=n1+1,sum=sum+score[i] Score[ i ]0 AND score[i]100 i = i +1 n10 average=sum/n1 average= – 1 返回 F F F T T T 1 2和3 4 5和6 7 8 9 10 11 12 4)路径4(1-2-3-4-5-8-2…)的测试用例: score[i]=有效分数,当i50; score[k]0,k i ; 期望结果:根据输入的有效分数算出正确的分数个数n1、总分sum和平均分aver

文档评论(0)

1亿VIP精品文档

相关文档