參考答案與分析
一、選擇題(1-25每題2分,共50分)
1. A 2. A 3. C 4. C5. C
6. B 7. B 8. B 9. D10. C
11. B 12. D 13. A 14. D15. C
16. D 17. B 18. C 19. D20. C
21. C 22. C 23. A 24. C25. A
二、論述題
1.首先分析手機(jī)中MP3播放器的各種狀態(tài)有三個(gè):播放、待機(jī)和停止。故根據(jù)題意找出各種狀態(tài)之間轉(zhuǎn)換的關(guān)系及條件,畫出該程序狀態(tài)圖,如下圖所示:
2.問題1:
解答:
首先分析軟件中出現(xiàn)的所有原因和結(jié)果,并將其標(biāo)號(hào)。
原因:
1 投入1元5角硬幣
2 投入2元硬幣
3 按"可樂"按鈕
4 按"雪碧"按鈕
5 按"紅茶"按鈕
結(jié)果:
21 退還5角硬幣
22 送出"可樂"飲料
23 送出"雪碧"飲料
24 送出"紅茶"飲料
中間狀態(tài):
11 已投幣
12 已按鈕
然后根據(jù)上述原因和結(jié)果,以及各狀態(tài)間的關(guān)系,畫出因果圖,如圖所示:
問題2:
解答:
將上述因果圖轉(zhuǎn)換為判定表,如表所示,每一列可以作為確定測(cè)試用例的依據(jù)。
3.問題1:
解答:
根據(jù)源程序易得流程圖,如圖所示。
問題2:
解答:
經(jīng)過分析不難知,上面這個(gè)程序包含:
1)五個(gè)語句:每行一個(gè)語句。
2)三個(gè)條件:a>0;b<0;c>0
3)四個(gè)分支:有兩個(gè)if語句,每個(gè)if語句有兩個(gè)分支。
4)六個(gè)條件組合:條件表達(dá)式(a>0)||(b<0) 共有兩個(gè)條件,a>0和 b<0,故有四個(gè)條件組合;條件表達(dá)式(c>0) 只有一個(gè)條件c>0,故有兩個(gè)條件組合。所以該程序共有六個(gè)條件組合。
5)四條路徑:從程序的入口到出口的路徑共有四條,分別是:
Path1:1-2-3-5-6-8
Path2:1-2-3-5-7-8
Path3:1-2-4-5-6-8
Path4:1-2-4-5-7-8
這個(gè)程序有三個(gè)輸入:a、b、c,其輸入數(shù)據(jù)組合是非常大的。下面對(duì)該程序分別應(yīng)用不同的邏輯覆蓋準(zhǔn)則,設(shè)計(jì)測(cè)試用例。
1 語句覆蓋
根據(jù)語句覆蓋準(zhǔn)則,只需要采用兩個(gè)輸入數(shù)據(jù)組合:(a,b,c)=(1,1,1)、(-1,1,1),便可以把該程序的所有五個(gè)語句執(zhí)行一遍。
2 分支覆蓋(判定覆蓋)
根據(jù)分支覆蓋準(zhǔn)則,只需要采用兩個(gè)輸入數(shù)據(jù)組合:(a,b,c)=(1,1,-1)、(-1,1,1),便可以把該程序的所有四個(gè)分支走遍。但未考慮b<0的情況,故不滿足條件覆蓋。說明滿足分支覆蓋的測(cè)試用例未必滿足條件覆蓋。
3條件覆蓋
根據(jù)條件覆蓋準(zhǔn)則,只需要采用兩個(gè)輸入數(shù)據(jù)組合:(a,b,c)=(1,1,-1)、(-1,-1,1),便可以把該程序的三個(gè)條件的真假情況都覆蓋到。 由于表達(dá)式(a>0)||(b<0)的計(jì)算值都為真,不會(huì)執(zhí)行else語句,即不滿足分支覆蓋和語句覆蓋。說明滿足條件覆蓋的未必滿足分支覆蓋和語句覆蓋。
4條件組合覆蓋
根據(jù)條件組合的覆蓋準(zhǔn)則 只需要采用四個(gè)輸入數(shù)據(jù)組合:(a,b,c)=(1,-1,1)、(1,1,1)、(-1,1,-1)、(-1,-1,-1),便可以把該程序的六個(gè)條件組合情況覆蓋到。但執(zhí)行的路徑數(shù)只有2個(gè),故不滿足路徑覆蓋。說明滿足條件組合的覆蓋不一定滿足路徑覆蓋。
5 路徑覆蓋
根據(jù)路徑覆蓋的準(zhǔn)則,由圖 可見,只需要采用四個(gè)輸入數(shù)據(jù)組合:(a,b,c)=(1,1,1)、(1,1,-1)、(-1,1,1)、(-1,1,-1),便可以把該程序的所有四條路徑都覆蓋。路徑覆蓋是最強(qiáng)的覆蓋準(zhǔn)則。
全國職稱計(jì)算機(jī)考試速成過關(guān)系列套裝:W .. 定價(jià):¥133 優(yōu)惠價(jià):¥133.0 更多書籍 | |
全國職稱計(jì)算機(jī)考試速成過關(guān)系列套裝:W .. 定價(jià):¥124 優(yōu)惠價(jià):¥124.0 更多書籍 |