根据下面程序流程图,分别用最少的测试用例完成语句覆盖、判定覆盖、条件覆盖和路径覆盖的测试用例!要求标注出所有的语句、判定、条件、路径,并编上序号,每一个测试用例说明覆盖的对应语句、判定、条件、路径的序号。

软件测试之语句覆盖、判定覆盖、条件覆盖、路径覆盖软件测试之语句覆盖、判定覆盖、条件覆盖、路径覆盖软件测试之语句覆盖、判定覆盖、条件覆盖、路径覆盖

两个判定:
MM
NN
两个条件:
M={X>0  &&  Y>10}M=\{X>0 \;\&\&\; Y >10\}
N={X<10    Y<0}N=\{X<-10\;||\;Y<0\}

四条路径:
P1(124):M&&NP1(1-2-4):M \&\& N
P2(125):M&&¬NP2(1-2-5):M \&\& \lnot N
P3(134):¬M&&NP3(1-3-4):\lnot M \&\& N
P4(135):¬M&&¬NP4(1-3-5):\lnot M \&\& \lnot N

两个语句:
Y=Y/XY=Y/X
Y=(Y+X)Y=-(Y+X)

语句覆盖

测试用例 覆盖的语句 覆盖路径
输入:X=2,Y=12
输出:X=2,Y=-8
Y=Y/X
Y=-(Y+X)
P1(1-2-4)

判定覆盖

测试用例 判定M的取值 判定N的取值 覆盖路径
输入:X=12,Y=24
输出:X=12,Y=2
T F P2(1-2-5)
输入:X=2,Y=-2
输出:X=2,Y=0
F T P3(1-3-4)

条件覆盖

对于MM:
X>0T1,F1X>0取真时T1,取假时F1
Y>10T2,F2Y>10取真时T2,取假时F2


对于NN:
X<10T3,F3X<-10取真时T3,取假时F3
Y<0T4,F4Y<0取真时T4,取假时F4

测试用例 取值条件 具体取值条件 覆盖路径
输入:X=12,Y=24
输出:X=12,Y=2
T1,T2,F3,F4 X>0,Y>10,X>=-10,Y>=0 P1(1-2-5)
输入:X=-12,Y=-2
输出:X=-12,Y=14
F1,F2,T3,T4 X<=0,Y<=10,X<-10,Y<0 P3(1-3-4)

路径覆盖

编号 覆盖条件取值 判定条件取值 判定条件组合
1 T1,T2 MM X>0,Y>10
2 T1,F2 ¬M\lnot M X>0.Y<=10
3 F1,T2 ¬M\lnot M X<=0,Y>10
4 F1,F2 ¬M\lnot M X<=0,Y>=10
5 T3,T4 NN X<-10,Y<0
6 T3,F4 NN X<-10,Y>=0
7 F3,T4 NN X>=-10,Y<0
8 F3,F4 ¬N\lnot N X>=-10,Y>=0
测试用例 覆盖条件 覆盖路径 覆盖组合
输入:X=2,Y=12
输出:X=2,Y=-14
T1,T2,T3,F4 P1(1-2-4) 1,6
输入:X=12,Y=24
输出:X=12,Y=2
T1,T2,F3,F4 P2(1-2-5) 1,8
输入:X=2,Y=-2
输出:X=2,Y=0
T1,F2,T3,T4 P3(1-3-4) 2,5
输入:X=12,Y=6
输出:X=12,Y=1
T1,F2,F3,F4 P4(1-3-5) 2,8

相关文章: