2013-01-18 160 views
1

您好我正在準備一個有競爭力的考試。雖然解決以前年度的問題,我遇到了這個問題無法獲得正確的輸出

下面的程序是語句覆蓋率進行測試:

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

請幫我解決這個問題

回答

4

你必須寫下每個測試用例覆蓋,並從中挑選從中:

  1. T1 :只有S1執行
  2. T2:只有S3執行
  3. T3:只有在執行S1
  4. T4:S2和S4被執行

所以爲了覆蓋所有您可能需要T1 + T2 + T4或T2 + T3 + T4。由於後者是不是一種選擇,你留下了選項D.

希望這是有道理的