您好,我正准备参加竞争性考试。在解决前几年的问题时,我遇到了这个问题
以下程序将针对声明范围进行测试:
begin
if (a== b) {S1; exit;}
else if (c== d) {S2;}
else {S3; exit;}
S4;
end
下面给出的测试用例T1,T2,T3和T4用以下表示 变量a,b,c和d的值满足的属性。确切的值是 没有给出。
T1:a,b,c和d都相等
T2:a,b,c和d都是不同的
T3:a = b和c!= d
T4:a!= b和c = d
下面给出的哪个测试套件确保了对语句S1,S2,S3的覆盖 和S4?
(A)T1,T2,T3
(B)T2,T4
(C)T3,T4
(D)T1,T2,T4
现在我只得到T2作为答案。但他们给出的答案是选项D
请帮我解决问题
答案 0 :(得分:4)
您必须记下每个测试用例所涵盖的内容,以及从中选择的内容:
所以为了覆盖它们,你需要T1 + T2 + T4或T2 + T3 + T4。由于后者不是一种选择,因此您可以选择D。
希望它有意义