計算機四級考試的方向很廣,因此考生要多花時間備考。下面是小編為大家蒐集整理出來的有關於計算機等級考試四級軟件測試工程師練習,希望可以幫助到大家!
一、選擇題(1-25每題2分,共50分)
下列各題A、B、C、D四個選項中,只有一個選項是正確的。請將正確選項填塗在答題卡相應位置上,答在試卷上不得分。
1.問題還沒有解決,測試人員新報告的缺陷,或驗證後缺陷仍然存在,這些缺陷所處的狀態是________。
(A)激活狀態
(B)非激活狀態
(C)已修正狀態
(D)關閉狀態
2.關注在一連串的測試中如何選擇合適的程序或子程序路徑來執行有效的檢查,這種測試極有可能是________。
(A)結構測試
(B)黑盒測試
(C)功能測試
(D)靜態測試
3.下面説法正確的是________。
(A)軟件測試僅是在編程之後進行的測試。
(B)需求規格説明、概要設計規格説明、詳細設計規格説明、源程序這些並不全是軟件測試的對象。
(C)測試配置是軟件配置的一個子集。
(D)錯誤發現的越晚,改正的代價就越大,這個代價是呈現接近線性增長的趨勢
4.在結構化測試用例設計中,有語句覆蓋、條件覆蓋、判定覆蓋(也稱分支覆蓋)、路徑覆蓋等,其中________是最強的覆蓋準則。
(A)語句覆蓋
(B)條件覆蓋
(C)判定覆蓋
(D)路徑覆蓋
5.因果圖方法是根據________之間的因果關係設計測試用例。
(A)輸入和輸出
(B)設計和實現
(C)條件和結果
(D)主程序和子程序
6.軟件測試的目的是________。
(A)證明軟件的正確性
(B)儘可能多地發現軟件系統中的錯誤
(C)找出軟件系統存在的所有錯誤
(D)證明軟件系統中存在錯誤
7.僅根據規格説明書描述的程序功能來設計測試用例的方法稱為是________。
(A)白盒測試法
(B)黑盒測試法
(C)靜態分析法
(D)人工分析法
8.軟件測試方法中,黑盒測試方法和白盒測試方法是常用的方法,其中黑盒測試方法主要用於測試________。
(A)結構合理性
(B)軟件外部功能
(C)程序的內部邏輯
(D)程序正確性
9.從下列敍述中選出能夠與軟件開發需求分析、設計、編碼相對應的軟件測試________。
(A)集成測試、確認測試、單元測試
(B)單元測試、集成測試、確認測試
(C)單元測試、確認測試、組裝測試
(D)確認測試、集成測試、單元測試
10.下列説法正確的是________。
(A)語句覆蓋使得每個判定的每個分支至少執行一次
(B)判定覆蓋使得每條語句至少執行一次
(C)條件覆蓋使得每個判定每個條件應取到各種可能的值
(D)條件組合覆蓋使得每個判定中各條件的每一種組合至少出現一次
11.集成測試時,能夠較早發現高層模塊接口錯誤的測試方法是________。
(A)自底向上漸增式測試方法
(B)自頂向下漸增式測試方法
(C)非漸增式測試方法
(D)系統測試方法
12.在軟件測試信息流中,輸入的的信息主要有________。
(A)軟件配置
(B)測試配置 考試大(da。com)
(C)測試工具
(D)以上全部
13.以下關於軟件測試方法,説法正確的是________。
(A)單元測試涉及編碼和詳細設計的文檔
(B)系統測試涉及概要設計信息
(C)確認測試涉及編碼和需求規格説明書
(D)集成測試設計其他的系統元素
14.下列軟件質量特性中,一般不作為系統測試重點的是________。
(A)產品版本升級是否容易
(B)軟件是否符合有關的國家和行業標準
(C)軟件產品是否易於理解和使用
(D)可複用的軟件部件所佔的比例
15.一般來説,大多數軟件缺陷源於軟件開發項目的________階段。
(A)軟件測試階段
(B)程序編寫和調試階段
(C)需求和設計階段
(D)加班工作期間
16.一般説來,對一個程序單元的測試應滿足一些具體的技術要求,或達到一定的技術指標。下面選項中屬於單元測試相關的技術要求或指標的是________。
(A)語句覆蓋率達到100%
(B)局部變量的邊界條件處理正確
(C)邏輯比較和控制流處理正確
(D)以上全部
17.下列軟件缺陷中,________是活動狀態,________是非活動狀態。
(A)打開和解決;關閉
(B)打開;解決和關閉
(C)通過;失敗
(D)打開;待驗和關閉
18.測試管理工具提供從測試設計到測試運行的全過程支持。這個工具的主要用途是________。
(A)自動抓取屏幕上的系統運行界面
(B)基於需求規格説明書自動生成測試數據、測試用例
(C)測試用例管理、軟件缺陷管理、軟件測試度量
(D)輔助管理軟件產品的各組成部分,使它們保持一致
19.下列比較適合自動化的軟件測試活動是________。
(A)測試用例設計
(B)迴歸測試
(C)測試環境的建立
(D)探查式測試
20.分析性能下降曲線時會把曲線劃分為幾個區間,那麼對於分析性能瓶頸有很大作用的是哪一個下列區間________。
(A)性能平坦區
(B)性能輕微下降區
(C)性能急劇下降區
(D)其他區
21.下面與軟件可靠性有關的概念中,理解不正確的是_______。
(A)軟件錯誤不僅包括程序代碼的錯誤,軟件開發過程中所有制品的錯誤及軟件的文檔、手冊中的錯誤都可以歸為軟件錯誤
(B)軟件故障是指軟件代碼中的錯誤
(C)在軟件的一次運行期間,軟件故障一定會導致軟件失效
(D)通常修改軟件故障可以降低軟件發生失效的概率,從而提高軟件可靠性
22.在實際的面向對象集成測試中,為保證測試的充分性,往往要關注測試類間的各種連接,下面的測試方法不屬於針對類間連接的測試是________。
(A)受控異常測試
(B)往返場景測試
(C)模態類測試
(D)類關聯的多重性測試
23.以下關於Web應用軟件測試的説法中,正確的是________。
(A)數據完整性測試是Web應用軟件數據層測試的一項重要內容
(B)內容測試是Web應用軟件易用性測試的一項重要內容
(C)表單測試是Web應用軟件表示層測試的一項重要內容
(D)鏈接結構的測試是Web應用軟件安全性測試的一項重要內容
24.下列不屬於對物理破壞的防護措施的是________。
(A)主要設備遠離人為破壞
(B)所有設備遠離災害的侵擾
(C)對通信數據進行加密
(D)主要設備要屏蔽電磁干擾
25.靜態分析中,提供整個項目中的所有函數之間的調用關係圖屬於________。
(A)程序結構分析
(B)程序數據流分析
(C)可視化分析
(D)程序執行頻度分析
二、論述題 (1-1每題10分,2-2每題12分,3-3每題28分,共50分
1.論述題1:以下是某手機中的MP3播放器狀態之間交互行為的描述,請按要求回答問題(10分)
下面以某手機中的MP3播放器的測試為例,説明如何設計測試案例。
某手機中的MP3播放器有三個狀態:待機、播放、停止,播放器最初處於"待機"狀態;可能發生的事件有五種:用户單擊"打開"按鈕,單擊"播放"按鈕,單擊"停止"按鈕,單擊"返回"按鈕,以及播放結束。其中"打開"表示單擊"打開"按鈕,其他類推。
請畫出該播放器中交互行為的狀態圖(應滿足功能圖的要求,不可畫成流程圖)。(10分)
2.論述題2:以下是一個自動飲料售貨機軟件的操作規格説明,請按要求回答問題(12分)
設要對一個自動飲料售貨機軟件進行黑盒測試。該軟件的規格説明如下:
"有一個處理單價為1元5角錢的盒裝飲料的自動售貨機軟件。若投入1元5角硬幣,按下"可樂"、"雪碧"或"紅茶"按鈕,相應的飲料就送出來。若投入的是2元硬幣,在送出飲料的同時退還5角硬幣。"
(1)試利用因果圖法,建立該軟件的因果圖(3分)
(2)設計測試該軟件的.全部測試用例(9分)
3.論述題3:針對以下C語言程序,請按要求回答問題(28分)
下面是一個簡單的C語言程序:
int func1(int a,b,c)
{ int k=1;
if((a>0||b<0)) k=k+a;
else k=k+b; 考試大(da。com)
if(c>0) k=k+c;
return k;
}
(1)畫出該函數的程序流程圖。(10分)
(2)設計測試用例,分別使函數的各種邏輯覆蓋率儘量達到100%。如果認為該函數的某種邏輯覆蓋率無法達到100%,需要説明原因。(10分)
(3)設計特殊的測試用例,説明各種邏輯覆蓋之間的關係。(8分)
參考答案與分析
一、選擇題(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.首先分析手機中MP3播放器的各種狀態有三個:播放、待機和停止。故根據題意找出各種狀態之間轉換的關係及條件,畫出該程序狀態圖,如下圖所示:
2.問題1:
解答:
首先分析軟件中出現的所有原因和結果,並將其標號。
原因:
1 投入1元5角硬幣
2 投入2元硬幣
3 按"可樂"按鈕
4 按"雪碧"按鈕
5 按"紅茶"按鈕
結果:
21 退還5角硬幣
22 送出"可樂"飲料
23 送出"雪碧"飲料
24 送出"紅茶"飲料
中間狀態:
11 已投幣
12 已按鈕
然後根據上述原因和結果,以及各狀態間的關係,畫出因果圖,如圖所示:
問題2:
解答:
將上述因果圖轉換為判定表,如表所示,每一列可以作為確定測試用例的依據。
3.問題1:
解答:
根據源程序易得流程圖,如圖所示。
問題2:
解答:
經過分析不難知,上面這個程序包含:
1)五個語句:每行一個語句。
2)三個條件:a>0;b<0;c>0
3)四個分支:有兩個if語句,每個if語句有兩個分支。
4)六個條件組合:條件表達式(a>0)||(b<0) a="">0和 b<0,故有四個條件組合;條件表達式(c>0) 只有一個條件c>0,故有兩個條件組合。所以該程序共有六個條件組合。
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
這個程序有三個輸入:a、b、c,其輸入數據組合是非常大的。下面對該程序分別應用不同的邏輯覆蓋準則,設計測試用例。
1 語句覆蓋
根據語句覆蓋準則,只需要採用兩個輸入數據組合:(a,b,c)=(1,1,1)、(-1,1,1),便可以把該程序的所有五個語句執行一遍。
2 分支覆蓋(判定覆蓋)
根據分支覆蓋準則,只需要採用兩個輸入數據組合:(a,b,c)=(1,1,-1)、(-1,1,1),便可以把該程序的所有四個分支走遍。但未考慮b<0的情況,故不滿足條件覆蓋。説明滿足分支覆蓋的測試用例未必滿足條件覆蓋。
3條件覆蓋
根據條件覆蓋準則,只需要採用兩個輸入數據組合:(a,b,c)=(1,1,-1)、(-1,-1,1),便可以把該程序的三個條件的真假情況都覆蓋到。 由於表達式(a>0)||(b<0)的計算值都為真,不會執行else語句,即不滿足分支覆蓋和語句覆蓋。説明滿足條件覆蓋的未必滿足分支覆蓋和語句覆蓋。
4條件組合覆蓋
根據條件組合的覆蓋準則 只需要採用四個輸入數據組合:(a,b,c)=(1,-1,1)、(1,1,1)、(-1,1,-1)、(-1,-1,-1),便可以把該程序的六個條件組合情況覆蓋到。但執行的路徑數只有2個,故不滿足路徑覆蓋。説明滿足條件組合的覆蓋不一定滿足路徑覆蓋。
5 路徑覆蓋
根據路徑覆蓋的準則,由圖 可見,只需要採用四個輸入數據組合:(a,b,c)=(1,1,1)、(1,1,-1)、(-1,1,1)、(-1,1,-1),便可以把該程序的所有四條路徑都覆蓋。路徑覆蓋是最強的覆蓋準則。
Copyright ©2024 才華齋 All Rights Reserved.