慕课软件质量保证与测试(习题集)
慕課金陵科技學院.軟件質量保證與測試.期末復習.習題匯總
- 0 總目錄
- 1 緒論
- 1.1 軟件質量保證與測試的產生與發展
- 1.2 軟件缺陷,軟件錯誤,軟件故障
- 1.3 軟件質量保證與測試的意義,原則和挑戰
- 1.4 單元測試
- 1.5 課后作業
- 2 軟件測試策略
- 2.1 軟件測試的模型,過程和生命周期
- 2.2 軟件測試的方法和技術
- 2.3 單元測試
- 2.4 課后作業
- 3 黑盒測試
- 3.1 黑盒測試概述
- 3.2 等價類劃分測試
- 3.3 邊界值測試
- 3.4 錯誤推測法
- 3.5 判定表驅動法
- 3.6 因果圖法
- 3.7 場景法
- 3.8 正交實驗法
- 3.9 單元測試
- 3.10 課后作業
- 4 白盒測試
- 4.1 白盒測試概述
- 4.2 程序靜態測試
- 4.3 邏輯覆蓋
- 4.4 基本路徑覆蓋
- 4.5 循環測試
- 4.6 程序變異測試
- 4.7 符號測試
- 4.8 程序插樁和調試
- 4.9 單元測試
- 4.10 課后作業
- 5 軟件測試過程
- 5.1 單元測試
- 5.2 集成測試1-簡介和相依性分析+集成測試的原因
- 5.2 集成測試2-方法和分析+自頂向下和自頂向上集成
- 5.2 集成測試3-核心系統先行集成+基于調用圖的集成
- 5.2 集成測試4-高頻集成+其他集成測試方法
- 5.3 系統測試1-概述
- 5.3 系統測試項目
- 5.4 驗收測試
- 5.5 回歸測試
- 5.6 單元測試
- 5.7 課后作業
- 6 白盒測試
- 6.1 面向對象測試
- 6.2 單元測試
- 6.3 課后作業
- 7 自動化測試
- 7.1 自動化測試概述
- 7.2 自動化黑盒測試
- 7.3 單元測試
- 7.4 課后作業
- 9 軟件質量與質量保證
- 9.1 軟件錯誤及分類
- 9.2 程序中隱藏錯誤數量估計
- 9.3 軟件質量
- 9.4 軟件質量模型
- 9.5 軟件質量管理
- 9.6 軟件質量管理體系
- 9.7 單元測試
- 10 軟件測試組織和管理
- 10.1 人員和資源組織
- 10.2 過程和進度管理
- 10.3 文檔、用例和缺陷管理
- 10.4 單元測試
- 10.5 課后作業
- 11 本科目完結
0 總目錄
1 緒論
1.1 軟件質量保證與測試的產生與發展
第一類測試方法與第二類測試方法的本質區別體現在:
A.執行測試的人員不同
B.執行測試的時間不同
C.執行測試的目的不同
D.執行測試的效果不同
正確答案:C
1.2 軟件缺陷,軟件錯誤,軟件故障
1 下列那種不屬于軟件缺陷:
A.銀行POS機在用戶取款時翻倍吐錢,取100,吐200
B.計算機病毒發作,屏幕出現熊貓燒香畫面
C.網上售票軟件反應遲鈍,用戶難以正常買票
D.某軟件在進行修改升級之后,原來正常的功能現在出錯了
正確答案:B
1.3 軟件質量保證與測試的意義,原則和挑戰
軟件質量保證與測試人員需要的的基本素質有( )
A.計算機專業技能
B.測試專業技能
C.行業知識
D.以上都是
正確答案:D
1 有一個武器控制軟件,請問它的質量成本中,哪部分成本變化范圍最大?
A.預防成本B.評估成本C.銷售成本D.失敗成本
正確答案:D
1.4 單元測試
1單選(1分)為了提高軟件測試的效率,應該 ( )。
A.選擇發現錯誤可能性大的數據作為測試數據1.00/1.00
B.取一切可能的輸入數據作為測試數據
C.隨機地選取測試數據
D. 選取最常見的數據作為測試數據
正確答案:A
2單選(1分)以下哪一類人員與軟件質量保證與測試工作無關?
A.軟件銷售人員1.00/1.00B.軟件需求分析人員C.軟件設計人員D.代碼開發人員
正確答案:A
3單選(1分)經驗表明,在程序測試中,某模塊與其他模塊相比,若該模塊已發現并改正的錯誤較多,則該模塊中殘存的錯誤數目與其他模塊相比,通常應該( )。
A.相似B.較少C.較多1.00/1.00D.不確定
正確答案:C
4單選(1分)軟件測試的目的是 ( )。
A.發現并修改程序中的錯誤
B.證明程序是正確的
C.盡可能多地發現程序中的錯誤1.00/1.00
D.發現程序中的所有錯誤
正確答案:C
5單選(1分)以下那一種選項不屬于軟件缺陷( )。
A.軟件沒有實現產品規格說明所要求的功能
B.軟件實現了產品規格沒有提到的功能
C.軟件中出現了產品規格說明不應該出現的功能
D.軟件滿足用戶需求,但測試人員認為用戶需求不合常理。
正確答案:D
6判斷(1分)單元測試通常由開發人員進行。
A.1.00/1.00B.
正確答案:對
7判斷(1分)測試是為了驗證軟件已正確地實現了用戶的要求。
A.B.1.00/1.00
正確答案:錯
8判斷(1分)好的測試員不懈追求完美,保證通過測試的軟件不會再有缺陷。
A.B.1.00/1.00
正確答案:錯
9填空(2分)軟件質量保證的英文縮寫是( )。
正確答案:SQA
10填空(2分)IEEE對軟件測試的定義是:使用人工或自動的手段來運行或測定某個軟件系統的過程,其目的在于檢驗它是否滿足( )或弄清預期結果與實際結果之間的差別 。
正確答案:規定的需求
1.5 課后作業
1(40分)軟件缺陷產生的原因有哪些?
答:針對軟件開發過程的主體和對象,軟件缺陷的產生,主要是由軟件產品的特點和開發過程決定的.從軟件自身的特點,團隊工作和技術問題等角度分析軟件缺陷產生的原因分為以下四點: 軟件自身的特點:1軟件自身的實際需求不清晰,導致設計目標偏離實際需求,從而引起功能或產品特征上的缺陷.2系統結構非常復雜,而又無法設計成一個很好的層次結構或組件結構,結果導致意想不到的問題或系統維護,擴充上的困難.即使設計成良好的面向對象的系統,由于對象,類太多,很難完成對各種對象,類相互作用的組合測試,而隱藏著一些參數傳遞,方法調用,對象狀態變化等方面問題. 3對一些實時應用,需要進行精心設計和技術處理,保證精確的時間同步,否則容易引起時間上不協調.不一致所帶來的問題.4系統運行環境的復雜,不僅用戶使用的計算機環境千變萬化,包括用戶的各種操作方式或各種不同的輸入數據,容易引起一些特定用戶環境下的問題.5.由于通信端口多.存取和加密手段的矛盾性等,會造成系統的安全性或適用性等問題. 團隊合作:1系統需求分析時對客戶的需求理解不清楚,或者和用戶的溝通存在一些困難. 2不同階段的開發人員相互理解不一致. 3對于設計或編程上的一些假定或依賴性,相關人員沒有充分溝通. 4項目組成員技術水平參差不齊,新員工較多,或培訓不夠等原因也容易引起問題. 設計和實現問題 1系統結構設計不合理.算法選擇不科學,造成系統性能低下. 2沒有考慮系統崩潰后的自我恢復或數據的異地備份,災難性恢復等問題,從而存在系統安全性.可靠性的隱患. 3對程序邏輯路徑或數據范圍的邊界考慮不夠周全,漏掉某些邊界條件,造成容量或邊界錯誤. 4算法錯誤:在給定條件下沒能給出正確或準確的結果. 5語法錯誤:對于編譯性語言程序,編譯器可以發現這類問題;但對于解釋性語言程序,只能在測試運行時發現. 6計算和精度問題:計算的結果沒有滿足所需要的精度. 7接口參數傳遞不匹配,導致模塊集成出現問題. 管理問題 1缺乏質量文化,不重視質量計劃,對質量.資源.任務.成本等的平衡性把握不好,容易擠掉需求分析.評審.測試.等時間,遺留的缺陷會比較多. 2開發流程不夠完善和規范,存在太多的隨機性和缺乏嚴謹的內審或評審機制,容易產生問題. 例如對需求變化,設計更改,代碼修正等因素缺乏嚴格規范的管理機制,導致開發過程難以穩步推進. 3開發周期短,需求分析.設計.編程.測試等各項工作不能完全按照定義好的流程來進行,工作不夠充分,結果也就不完整.不準確,錯誤較多;周期短,還給各類開發人員造成太大的壓力,引起一些人為的錯誤. 4文檔不完善,風險估計不足等.2(60分)哪些情況屬于軟件缺陷?
答:軟件出現以下情況屬于軟件缺陷包括: 1軟件出現了產品說明書指明不會出現的錯誤. 2軟件未達到產品說明書的功能. 3軟件功能超出產品說明書指明范圍. 4軟件未達到產品說明書雖未指出但應達到的目標. 5軟件難以理解,不易使用,運行速度緩慢,最終用戶認為不好.2 軟件測試策略
2.1 軟件測試的模型,過程和生命周期
在軟件生命周期的哪一個階段,軟件缺陷修復費用最低 ( )
A.需求分析(編制產品說明書)B.設計C.編碼D.產品發布
正確答案:A
2.2 軟件測試的方法和技術
下列哪項不屬于黑盒測試的優點( )。
A.不需要源代碼B.測試簡單易行
C.可以對代碼進行有針對性的測試
D.可以發現軟件功能上的問題
正確答案:C
2.3 單元測試
1單選(1分)在軟件生命周期的哪一個階段,軟件缺陷修復的成本最高 ( )
A.需求分析(編制產品說明書)B.產品發布1.00/1.00C.編碼D.設計
正確答案:B
2單選(1分)下列中不屬于測試原則的是( )。
A.找到的缺陷越多,軟件遺留的缺陷就越少1.00/1.00
B.完全測試程序是不可能的
C.軟件測試是有風險的行為
D.測試無法找出所有的軟件缺陷
正確答案:A
3單選(1分)較實用的軟件測試停止標準是( )。
A.根據查出的缺陷總數量決定是否停止測試。
B.分析發現的缺陷數量和測試投入成本曲線圖,確定應繼續測試還是停止測試。1.00/1.00
C.測試成本超過了預期計劃,則停止測試。
D.測試超過了預定時間,則停止測試。
正確答案:B
4單選(1分)軟件測試的局限性不包括( )
A.有的缺陷與特定的環境條件有關。
B.巧合性有時會導致錯誤的代碼得到正確的結果,掩蓋了問題。
C.軟件測試會導致成本增加,項目總體效益降低。1.00/1.00
D.因為輸入/狀態空間的無限性,測試不可能完全徹底。
正確答案:C
5單選(1分)劃分軟件測試屬于白盒測試還是黑盒測試的依據是 ( )
A.是否能看到軟件文檔
B.是否能看到被測源程序
C.是否執行程序代碼0.00/1.00
D.運行結果是否確定
正確答案:B
6判斷(1分)軟件測試針對的是初級程序員編寫的程序,資深程序員編寫的程序無需測試。( )
A.B.1.00/1.00
正確答案:錯
7判斷(1分)一個軟件存在哪些缺陷,開發者和用戶的立場是一致的。( )
A.1.00/1.00B.
正確答案:錯
8判斷(1分)發現錯誤多的模塊,殘留在模塊中的錯誤也多。( )
A.0.00/1.00B.
正確答案:對
9填空(2分)動態測試的兩個基本要素是____________、_______________。
正確答案:
被測試程序
測試用例
10填空(2分)按照是否需要知道被測試程序的內部結構,測試方法可以分為:和。
正確答案:
黑盒測試
白盒測試
2.4 課后作業
1(1分)軟件測試技術可以分為靜態測試和動態測試,下列說法中錯誤的是( )。
A、靜態測試是指不運行程序,通過檢查和閱讀等手段來發現程序中的錯誤。
B、動態測試是指實際運行程序,通過運行的結果來發現程序中的錯誤。
C、動態測試包括黑盒測試和白盒測試。
D、白盒測試是靜態測試,黑盒測試是動態測試。
參考答案:D
2(1分)劃分軟件測試屬于白盒測試還是黑盒測試的依據是 ( )
A、是否執行程序代碼
B、是否能看到軟件設計文檔
C、是否能看到被測源程序
D、運行結果是否確定
參考答案:C
3(1分)( )把黑盒測試和白盒測試的界限打亂了。
A、灰盒測試 B、動態測試 C、靜態測試 D、失敗測試
參考答案:A
4(1分)在軟件測試用例設計的方法中,最常用的方法是黑盒測試和白盒測試,其中不屬于白盒測試所關注的是( )
A、程序結構 B、軟件外部功能 C、程序正確性 D、程序內部邏輯
參考答案:B
5(1分)下列哪項不屬于黑盒測試的優點( )。
A. 不需要源代碼
B. 測試簡單易行
C. 可以對代碼進行有針對性的測試
D. 可以發現軟件功能上的問題
參考答案:C
6(2分)動態測試的兩個基本要素是_______________、__________________。
參考答案:
被測試程序 測試用例
7(2分)軟件測試的 W 模型由兩個 V 字組成,分別代表_________與_________過程。
參考答案:
軟件質量驗證,確認,測試 軟件開發
8(2分)按照是否需要知道被測試程序的內部結構,測試方法可以分為:和。
參考答案:
黑盒測試 白盒測試
9(1分)(判斷題)黑盒測試的測試用例是根據程序內部邏輯設計的。( )
參考答案:錯
10(1分)(判斷題) 軟件測試是有效的發現軟件缺陷的手段。( )
參考答案:對
11(1分)(判斷題)集成測試計劃在需求分析階段末提交。( )
參考答案:錯
12(4分) 請分析黑盒測試、白盒測試、靜態測試、動態測試之間的關系。
參考答案:
13(8分)試對比分析黑盒測試、白盒測試各自的優缺點。
參考答案:
14(6分) 你認為應如何對一個軟件實施測試,試結合你所參與過的軟件項目,闡述軟件測試工作的一般過程。
參考答案:
15(4分) 黑盒測試是動態測試,請分析動態白盒測試與黑盒測試的區別。
參考答案:
3 黑盒測試
3.1 黑盒測試概述
黑盒測試技術,使用最廣的用例設計技術是( )
A.等價類劃分B.邊界值分析C.錯誤推測法D.邏輯覆蓋
正確答案:A
3.2 等價類劃分測試
在某大學學籍管理信息系統中,假設學生年齡的輸入范圍為16-40,則根據黑盒測試中的等價類劃分技術,下面劃分正確的是( )。
A.可劃分為2個有效等價類,2個無效等價類
B.可劃分為1個有效等價類,2個無效等價類
C.可劃分為2個有效等價類,1個無效等價類
D.可劃分為1個有效等價類,1個無效等價類
正確答案:B
3.3 邊界值測試
用邊界值分析法,假定“1<=X<=100”,那么整數X在測試中應取的邊界值不包括( )。
A.X=1,X=100;
B.X=0,X=101;
C.X=2,X=99;
D.X=3,X=98;
正確答案:C
3.4 錯誤推測法
憑經驗或直覺推測可能的錯誤,列出程序中可能有的錯誤和容易發生錯誤的特殊情況,選擇測試用例的測試方法叫( )。
A.等價類劃分B.邊界值分析C.錯誤推測法D.邏輯覆蓋測試
正確答案:C
3.5 判定表驅動法
判定表中一個特定的條件取值組合及其相應要執行的動作稱為一條( )。
A.規則B.變換C.運算D.測試
正確答案:A
3.6 因果圖法
( )方法根據輸出對輸入的依賴關系設計測試用例。
A.路徑測試B.等價類C.因果圖D.歸納測試
正確答案:C
3.7 場景法
對于業務流清晰的系統可以利用( )貫穿整個測試用例設計過程并在用例中綜合使用各種測試方法。 A.等價類劃分 B.因果圖法 C.正交試驗法 D.場景法
正確答案:D
3.8 正交實驗法
對于參數配置類的軟件,要用( )選擇較少的組合方式達到最佳效果。
A.等價類劃分 B.因果圖法 C.正交試驗法 D.場景法
正確答案:C
3.9 單元測試
1單選(1分)在某大學學籍管理信息系統中,假設學生年齡的輸入范圍為16-40,則根據黑盒測試中的等價類劃分技術,下面劃分正確的是( )。得分/總分
A.可劃分為2個有效等價類,2個無效等價類
B.可劃分為1個有效等價類,2個無效等價類1.00/1.00
C.可劃分為2個有效等價類,1個無效等價類
D.可劃分為1個有效等價類,1個無效等價類
正確答案:B
2單選(1分)在確定黑盒測試策略時,優先選用的方法是 ()
A.決策表方法 B.邊界值分析法 C.等價類劃分 D.錯誤推斷法
正確答案:C
3單選(1分)憑經驗或直覺推測可能的錯誤,列出程序中可能有的錯誤和容易發生錯誤的特殊情況,選擇測試用例的測試方法叫( )。
A.邏輯覆蓋測試 B.邊界值分析 C.等價類劃分 D.錯誤推測法
正確答案:D
4單選(1分)黑盒測試技術中不包括( )。
A.邏輯覆蓋1.00/1.00 B.邊界值分析 C.等價類劃分 D.錯誤推測法
正確答案:A
5單選(1分)對于業務流清晰的系統可以利用( )貫穿整個測試用例設計過程并在用例中綜合使用各種測試方法。
A.正交試驗法 B.場景法 C.因果圖法 D.等價類劃分
正確答案:B
3.10 課后作業
1(1分)憑經驗或直覺推測可能的錯誤,列出程序中可能有的錯誤和容易發生錯誤的特殊情況,選擇測試用例的測試方法叫( )
A等價類劃分 B邊界值分析 C錯誤推測法 D邏輯覆蓋測試
參考答案:D
2(1分)黑盒測試技術中不包括( )。
A等價類劃分 B邊界值分析 C錯誤推測法 D邏輯覆蓋
參考答案:D
3(1分)黑盒測試技術,使用最廣的用例設計技術是( )
A等價類劃分 B邊界值分析 C錯誤推測法 D邏輯覆蓋
參考答案:A
4(1分)在某大學學籍管理信息系統中,假設學生年齡的輸入范圍為16-40,則根據黑盒測試中的等價類劃分技術,下面劃分正確的是( )。
A可劃分為2個有效等價類,2個無效等價類
B可劃分為1個有效等價類,2個無效等價類
C可劃分為2個有效等價類,1個無效等價類
D可劃分為1個有效等價類,1個無效等價類
參考答案:B
5(1分)有一組測試用例使得被測程序的每一個分支至少被執行一次,它滿足的覆蓋標準是( )。
A語句覆蓋 B判定覆蓋 C條件覆蓋 D路徑覆蓋
參考答案:B
6(1分)在確定黑盒測試策略時,優先選用的方法是 ()
A邊界值分析法 B等價類劃分 C錯誤推斷法 D決策表方法
參考答案:B
7(1分)( )方法根據輸出對輸入的依賴關系設計測試用例。
A路徑測試 B等價類 C因果圖 D歸納測試
參考答案:C
8(1分)對于參數配置類的軟件,要用( )選擇較少的組合方式達到最佳效果。
A等價類劃分 B因果圖法 C正交試驗法 D場景法
參考答案:C
9(1分)對于業務流清晰的系統可以利用( )貫穿整個測試用例設計過程并在用例中綜合使用各種測試方法。
A等價類劃分 B因果圖法 C正交試驗法 D場景法
參考答案:D
10(1分)下列不屬于黑盒測試方法的是( )。
A等價類劃分 B因果圖 C邊界值分析 D變異測試
參考答案:D
11(1分)用邊界值分析法,假定1<X<100,那么整數X在測試中應取的邊界值不包括( )。
A、X=1,X=100;
B、X=0,X=101;
C、X=2,X=99;
D、X=3,X=98;
參考答案:B
12(2分)等價類劃分有兩種不同的情況:和。
參考答案:有效等價類 無效等價類
13(1分)如果有多個輸入條件,并且各個條件之間存在關聯,那么僅僅只是覆蓋所有的等價類還不夠,還需要考慮等價類之間的____________。
參考答案:組合
14(2分)各個被測變量的等價類總數等于其____________ 加上 ____________。
參考答案:有效等價類數 無效等價類數
15(1分)(判斷)一個測試用例可覆蓋多個有效等價類和無效等價類。( )
參考答案:錯
16(1分)(判斷)不同的等價類劃分得到的測試用例的質量不同。( )
參考答案:?對
17(1分)(判斷)強健壯等價類測試中測試用例個數為各個被測變量的等價類總數的和。( )
參考答案:錯 注:還有各個被測變量的無效等價類數之和
18(18分)某種信息加密代碼由三部分組成,這三部分的名稱和內容分別是加密類型碼:空白或三位數字;前綴碼 :非’0’或’1’開頭的三位數;后綴碼 :四位數字。假定被測試的程序能接受一切符合上述規定的信息加密代碼,拒絕所有不符合規定的信息加密代碼,
試用等價類劃分法,分析它所有的等價類,并設計測試用例。
參考答案:
19(10分)某“銀行網站系統”登錄界面如下圖所示,
試采用錯誤推測法,舉出10種常見問題或錯誤,并設計10個測試用例。
參考答案:
20(20分)有一個在線購物網站系統,主要功能包括登錄、商品選購、在線支付完成購物等。用戶在使用這些功能時可能會出現各種情況,如賬號不存在、密碼錯誤、賬戶余額不足等。設目前該系統中僅有一個賬號abc;密碼為123;賬戶余額200;僅有商品A,售價均為50元,庫存為15,商品B售價為50元,庫存為0。
試采用場景法:分析畫出事件流圖,標注出基本流和備選流;分析生成測試場景。對每一個場景設計相應的測試用例。
參考答案:
21(10分)有一個“用戶信息輸入”界面如下圖,輸入項有3個:姓名、昵稱、手機號碼,狀態有兩個:填與不填。請采用正交實驗法對其進行測試。
(1)請選擇一個合適的正交表
(2)根據選定的正交表進行變量映射
(3)寫出測試用例
參考答案:
22(20分)有一個處理單價為5角錢的飲料自動售貨機軟件,其規格說明如下:若投入5角錢或1元錢的硬幣,押下〖橙汁〗或〖啤酒〗的按鈕,則相應的飲料就送出來。若售貨機沒有零錢找,則一個顯示〖零錢找完〗的紅燈亮,這時在投入1元硬幣并押下按鈕后,飲料不送出來而且1元硬幣也退出來;若有零錢找,則顯示〖零錢找完〗的紅燈滅,在送出飲料的同時退還5角硬幣。
(1)分析軟件規格說明,列出原因和結果。
(2)畫出因果圖。
(3)列出簡化后的判定表
參考答案:
23(24分)某程序功能為輸出某個輸入日期明天的日期,例如輸入2020年2月2日,則該程序的輸出為2020年2月3日。該程序有三個輸入變量 year、month、day,分別表示輸入日期的年、月、日。
(1) 請根據程序規格,分別為輸入變量year、month、day劃分有效等價類。
(2) 分析程序的規格說明,并結合以上等價類劃分的情況,給出程序所有可能采取的操作。
(3) 根據(1)和(2),畫出簡化后的決策表,并為每條規則設計測試用例。
參考答案:
4 白盒測試
4.1 白盒測試概述
分軟件測試屬于白盒測試還是黑盒測試的依據是 ( )
A.是否執行程序代碼
B.是否能看到軟件設計文檔
C.是否能看到被測源程序
D.運行結果是否確定
正確答案:C
4.2 程序靜態測試
件測試技術可以分為靜態測試和動態測試,下列說法中錯誤的是( )。
A.靜態測試是指不運行程序,通過檢查和閱讀等手段來發現程序中的錯誤。
B.動態測試是指實際運行程序,通過運行的結果來發現程序中的錯誤。
C.動態測試包括黑盒測試和白盒測試。
D.白盒測試是靜態測試,黑盒測試是動態測試。
正確答案:D
4.3 邏輯覆蓋
列不屬于白盒測試中邏輯覆蓋標準的是( )。
A.語句覆蓋B.條件覆蓋C.分支覆蓋D.邊界值覆蓋
正確答案:D
在以下有關邏輯覆蓋的說法中錯誤的說法是( )A.所有滿足條件組合覆蓋標準的測試用例集,也滿足路徑覆蓋的覆蓋標準
B.條件覆蓋能夠查出條件中包含的錯誤,但有時達不到判定覆蓋的覆蓋率要求
C.路徑覆蓋的查錯能力很強,但有時達不到條件組合覆蓋的覆蓋率要求
D.包含了語句覆蓋,但它不能保證每個錯誤條件都能檢查得出來
正確答案:A
4.4 基本路徑覆蓋
一個程序進行基本路徑覆蓋測試,所需測試用例的最少個數為( )。
A.程序中的路徑總數
B.程序中判定節點的個數
C.程序中的模塊數
D.程序的環路復雜度
正確答案:D
4.5 循環測試
Z路徑覆蓋把循環結構簡化為了( )結構來進行測試。
A.分支B.順序C.嵌套D.隨機
正確答案:A
4.6 程序變異測試
變異測試是一種( )驅動測試。
A.問題B.目標C.路徑D.錯誤
正確答案:D
4.7 符號測試
符號測試允許程序的輸入不僅僅是具體的數值數據,而且包括( )。
A.邏輯數據B.浮點數據C.符號值D.特殊值
正確答案:C
4.8 程序插樁和調試
( )是一種特殊的插樁,是在程序的特定部位插入語句用來檢查變量的特性。
A.賦值B.顯示C.比較D.斷言
正確答案:D
4.9 單元測試
1單選(1分)下列不屬于白盒測試的技術是 ( ) 。
A.判定覆蓋 B.邊界值分析 C.語句覆蓋 D.基本路徑測試
正確答案:B
2單選(1分)代碼檢查法有桌面檢查法,走查和( )。
A.白盒測試 B.動態測試 C.靜態測試 D.代碼審查
正確答案:D
3單選(1分)如果某測試用例集實現了判定覆蓋,那么它一定同時實現了該軟件的 ( )
A.條件組合覆蓋 B.語句覆蓋 C.條件覆蓋 D.判定/條件覆蓋
正確答案:B
4單選(1分)一個程序中所含有的路徑數與( )有著直接的關系。
A.程序模塊數 B.程序的復雜程度 C.程序指令執行時間 D.程序語句行數
正確答案:B
5單選(1分)針對下面一個程序段:
If ((M>0) && (N = = 0))
FUCTION1;
If ((M = = 10)|| (P > 10))
FUCTION2;
其中,FUCTION1、FUCTION2均為語句塊。現在選取測試用例:M=10 N=0 P=3 ,該測試用例滿足了( )。
A.路徑覆蓋 B.判定覆蓋 C.語句覆蓋 D.條件組合覆
正確答案:C
4.10 課后作業
習題四
1(1分)下列不屬于白盒測試的技術是 ( ) 。
A、語句覆蓋 B、判定覆蓋 C、邊界值分析 D、基本路徑測試
正確答案:C
2(1分)某次程序調試沒有出現預計的結果,下列( )不可能是導致出錯的原因。
A、變量沒有初始化
B、編寫的語句書寫格式不規范
C、循環控制出錯
D、代碼輸入有誤
正確答案:B
3(1分)代碼檢查法有桌面檢查法,走查和( )。
A、靜態測試 B、 代碼審查 C、動態測試 D、白盒測試
正確答案:B
4(1分)如果某測試用例集實現了某軟件的路徑覆蓋,那么它一定同時實現了該軟件的 ( )
A、判定覆蓋 B、條件覆蓋 C、判定/條件覆蓋 D、組合覆蓋
正確答案:A
5(1分)軟件測試的局限性不包括( )
A、因為輸入/狀態空間的無限性,測試不可能完全徹底。
B、巧合性有時會導致錯誤的代碼得到正確的結果,掩蓋了問題。
C、軟件測試會導致成本增加,效益降低。
D、軟件缺陷的不確定性。
正確答案:C
6(1分)以下哪種測試方法不屬于白盒測試技術( )
A、基本路徑測試 B、邊界值分析測試 C、程序插樁 D、邏輯覆蓋測試
正確答案:B
7(1分)調試是( )
A、發現與預先定義的規格和標準不符合的問題
B、發現軟件錯誤征兆的過程
C、有計劃的、可重復的過程
D、消除軟件錯誤的過程
正確答案:D
8(1分)使用白盒測試方法時,確定測試數據的依據是指定的覆蓋標準和 ( )
A、程序的注釋 B、程序的內部邏輯C、用戶使用說明書 D、程序的需求說明
正確答案:B
9(1分)數據流覆蓋關注的是程序中某個變量從其聲明、賦值到引用的變化情況,它是下列哪一種覆蓋的變種( )。
A、語句覆蓋 B、控制覆蓋 C、分支覆蓋 D、路徑覆蓋
正確答案:D
10(1分)如果一個判定中的復合條件表達式為(A > 1)or(B <= 3),則為了達到100%的條件覆蓋率,至少需要設計多少個測試用例( )。
A、1 B、2 C、3 D、4
正確答案:B
11(1分)一個程序中所含有的路徑數與( )有著直接的關系。
A、程序的復雜程度 B、程序語句行數C、程序模塊數 D、程序指令執行時間
正確答案:A
12(1分)條件覆蓋的目的是 ( )
A、使每個判定中的每個條件的可能取值至少滿足一次
B、使程序中的每個判定至少都獲得一次"真"值和"假"值。
C、使每個判定中的所有條件的所有可能取值組合至少出現一次。
D、使程序中的每個可執行語句至少執行一次。
正確答案:A
13(1分)軟件調試的目的是( )
A、發現軟件中隱藏的錯誤
B、解決測試中發現的錯誤
C、盡量不發現錯誤以便早日提交軟件
D、證明軟件的正確性
正確答案:B
14(1分)針對下面一個程序段:
其中,FUCTION1、FUCTION2均為語句塊。現在選取測試用例:M=10 N=0 P=3 ,該測試用例滿足了( )。
A、路徑覆蓋 B、條件組合覆蓋 C、判定覆蓋 D、語句覆蓋
正確答案:D
15(1分)對下面的計算個人所得稅程序中,滿足判定覆蓋的測試用例是( )。
if (income<800) taxrate=0; else if (income<=1500) taxrate=0.05; else if (income<2000) taxrate=0.08; else taxrate=0.1;A、income=(799, 1500, 1999, 2000) B、income=(799, 1501, 2000, 2001) C、income=(800, 1500, 2000, 2001) D、income=(800, 1499, 2000, 2001)正確答案:A
16(1分)設有一段程序如下:
if (a==b and c==d or e==f) do S1else if (p==q or s==t) do S2else do S3若要達到“判定—條件覆蓋”的要求,最少的測試用例數目是( )
A、6 B、8 C、3 D、4
正確答案:C
17(1分)下列不屬于白盒測試中邏輯覆蓋標準的是( )。
A、語句覆蓋 B、條件覆蓋 C、分支覆蓋 D、邊界值覆蓋
正確答案:D
18(1分)在某學校的綜合管理系統設計階段,教師實體在學籍管理子系統中被稱為"教師",而在人事管理子系統中被稱為"職工",這類沖突描述正確的為( )。
A、語義沖突 B、命名沖突 C、屬性沖突 D、結構沖突
正確答案:B
19(3分)代碼檢查的方式有三種:、、_____________。
正確答案:桌面檢查 代碼審查 代碼走查
20(3分)數據流分析就是對程序中數據的__________、__________及其之間的__________等進行分析的過程。
參考答案:定義 引用 依賴關系
21(1分)____________是邏輯覆蓋標準的一種,它要求選取足夠多的測試數據,使得每個判定表達式中條件的各種可能組合都至少出現一次。
正確答案:條件組合覆蓋
22(1分)(判斷)所有滿足條件組合覆蓋標準的測試用例集,也分支覆蓋標準。 ( )
參考答案:對
23(1分)(判斷)軟件測試的目的在于發現錯誤、改正錯誤。 ( )
正確答案:錯
24(1分)(判斷)條件覆蓋能夠查出條件中包含的錯誤,但有時達不到判定覆蓋的覆蓋率要求。 ( )
正確答案:對
25(1分)(判斷)在白盒測試中,如果某種覆蓋率達到100% ,就可以保證把所有隱藏的程序缺陷都已經揭露出來了。 ( )
正確答案:錯
26(1分)(判斷)白盒測試的條件覆蓋標準強于判定覆蓋。 ( )
正確答案:錯
27(1分)(判斷)判定覆蓋包含了語句覆蓋,但它不能保證每個錯誤條件都能檢查出來。 ( )
正確答案:對
28(13分)請為以下程序段設計測試用例集,要求分別滿足語句覆蓋、判定覆蓋、條件覆蓋、條件/判定覆蓋覆蓋、條件組合覆蓋。
public int do_work(int A,int B){ int x=0;if((A>4) && (B<9)) { x = A-B;}if( A==5 && B>28 ) { x= A+B;}return x; }參考答案:
29(11分)請為以下程序段設計測試用例集,要求滿足條件組合覆蓋
public class Triangle { protected long lborderA = 0;protected long lborderB = 0;protected long lborderC = 0;// Constructorpublic Triangle(long lborderA, long lborderB, long lborderC) {this.lborderA = lborderA;this.lborderB = lborderB;this.lborderC = lborderC; } public boolean isTriangle(Triangle triangle) {boolean isTriangle = false;// check boundaryif (triangle.lborderA > 0 && triangle.lborderB > 0 && triangle.lborderC > 0 )// check if subtraction of two border larger than the thirdif ((triangle.lborderA-triangle.lborderB) < triangle.lborderC&& (triangle.lborderB-triangle.lborderC) < triangle.lborderA&& (triangle.lborderC-triangle.lborderA) < triangle.lborderB) {isTriangle = true; }return isTriangle;} }正確答案:
30(13分)請為程序模塊Function1
(1)畫出程序控制流圖,計算控制流圖的環路復雜度
(2)導出基本路徑
(3)設計基本路徑覆蓋測試用例
程序模塊Function1代碼如下:
正確答案:
31(6分)請對以下程序進行插樁,顯示循環執行的次數
public class GCD {public int getGCD(int x,int y){if(x<1||x>100){System.out.println("參數不正確!");return -1;}if(y<1||y>100){System.out.println("參數不正確!");return -1;}int max,min,result = 1;if(x>=y){max = x;min = y;}else{max = y;min = x;}for(int n=1;n<=min;n++){if(min%n==0&&max%n==0){if(n>result)result = n;}}System.out.println("最大公約數為:"+result);return result;}}正確答案:
package com.mozhimen.test;public class ceshi4_31 {int count=0;public static void main(String[] args) {// TODO Auto-generated method stubceshi4_31 ceshi=new ceshi4_31();int x=4;int y=10;ceshi.getGCD(x,y);}public int getGCD(int x,int y){if(x<1||x>100){System.out.println("參數不正確!");return -1;}if(y<1||y>100){System.out.println("參數不正確!");return -1;}int max,min,result = 1;if(x>=y){max = x;min = y;}else{max = y;min = x;}for(int n=1;n<=min;n++){count++;if(min%n==0&&max%n==0){if(n>result)result = n;}}System.out.println("最大公約數為:"+result);System.out.println("count:"+count);return result;} }32(10分)請對以下代碼段進行變異,變異規則為將 “++” 替換為 “–”,然后設計測試數據,能夠測試發現所有的變異點。
public class zhengchu {public String iszhengchu(int n) { if(n<0||n>500) { return "error";}int flag=0;String note="";if(n%3==0) {flag++;note=note+" 3";}if(n%5==0) {flag++;note+=" 5";}if(n%7==0) {flag++;note+=" 7";}return "能被"+flag+"個數整除,"+note; } }正確答案:
5 軟件測試過程
5.1 單元測試
軟件測試是軟件質量保證的重要手段,下述哪種測試是軟件測試的最基礎環節?( )
A.集成測試B.單元測試C.目的測試D.確認測試
正確答案:B
單元測試一般以( )為主。
A.白盒測試B.黑盒測試C.系統測試D.分析測試
正確答案:A
5.2 集成測試1-簡介和相依性分析+集成測試的原因
集成測試對系統內部的交互以及集成后系統功能檢驗了何種質量特性( )
A.正確性B.可靠性C.可使用性D.可維護性
正確答案:A
軟件測試過程中的集成測試主要是為了發現( )階段的錯誤碼。
A.需求分析B.概要設計C.編碼D.維護
正確答案:B
5.2 集成測試2-方法和分析+自頂向下和自頂向上集成
集成測試的測試用例是根據( )的結果來設計。
A.需求分析B.源程序C.概要設計D.詳細設計
正確答案:C
增量式集成測試有3種方式:自頂向下增量測試方法,( )和混合增量測試方式。
A.從小到大增量測試方法
B.自底向上增量測試方法
C.從大到小增量測試
D.自上向底增量測試方法
正確答案:B
5.2 集成測試3-核心系統先行集成+基于調用圖的集成
核心系統先行集成每次加入一個外圍軟件部件都產生一個產品( ),直至最后形成穩定的軟件產品。
A.基線B.副本C.分支D.升級
正確答案:A
基于調用圖的集成主要有相鄰集成和( )。
A.成對集成B.相對集成C.自底向上集成D.自頂向下集成
正確答案:A
5.2 集成測試4-高頻集成+其他集成測試方法
( )測試方法頻繁不斷地將新代碼加入到一個已經穩定的基線中,這樣可以盡早地發現代碼中的問題,同時控制可能出現的基線偏差,而不至于等到最后階段各種問題、缺陷和偏差集中暴露,甚至于發現整個軟件根本就不是我們所需要的。
A.高頻集成B.成對集成C.三明治集成D.大棒集成
正確答案:A
以下關于集成測試的內容正確的表述有( )。
①集成測試也叫組裝測試或者聯合測試;
②在把各個模塊連接起來的時候,穿越模塊接口的數據是否會丟失;
③一個模塊的功能是否會對另一個模塊的功能產生不利的影響;
④各個子功能組合起來,能否達到預期要求的父功能;
⑤全局數據結構是否有問題;
⑥單個模塊的誤差累積起來,是否會放大,從而達到不能接受的程度;
A.②④⑤⑥B.③④⑤⑥C.①②③⑤⑥D.以上全部正確
正確答案:D
5.3 系統測試1-概述
系統測試完全采用( )技術,因為這時已不需要考慮組件模塊的實現細節,而主要是根據需求分析時確定的標準檢驗軟件是否滿足功能、性能和安全等方面的要求。
A.黑盒測試B.白盒測試C.靜態測試D.手工測試
正確答案:A
5.3 系統測試項目
對Web網站進行的測試中,屬于功能測試的是 ( )
A.連接速度測試B.鏈接測試C.平臺測試D.安全性測試
正確答案:B
幾乎所有的性能測試都會涉及( )。
A.并發測試B.壓力測試C.容量測試D.安裝測試
正確答案:A
以下哪種軟件測試屬于軟件性能測試的范疇( )。
A.接口測試B.壓力測試C.單元測試D.易用性測試
正確答案:B
5.4 驗收測試
下列關于alpha測試的描述中正確的是:( )。
A.alpha測試一定要真實的最終軟件用戶參加
B.alpha測試是集成測試的一種
C.alpha測試是系統測試的一種
D.alpha測試是驗收測試的一種
正確答案:D
5.5 回歸測試
( )的目的是為了檢查驗證修改的正確性以及修改對其它部分的影響。
A.回歸測試B.單元測試C.集成測試D.系統測試
正確答案:A
5.6 單元測試
1單選(1分)單元測試中用來模擬被測模塊調用者的模塊是 ( )
A.父模塊 B.驅動模塊 1.00/1.00C.樁模塊D.子模塊
正確答案:B
2單選(1分)在軟件底層進行的測試稱為 ( )
A.集成測試B.功能測試C.系統測試 D.單元測試 1.00/1.00
正確答案:D
3單選(1分)增量式集成測試有3種方式:自頂向下增量測試方法,( )和混合增量測試方式。
A.從小到大增量測試方法
B.自底向上增量測試方法 1.00/1.00
C.從大到小增量測試方法
D.自上向底增量測試方法
正確答案:B
4單選(1分)用于考察當前軟硬件環境下軟件系統所能承受的最大負荷并幫助找出系統瓶頸所在的是( )。
A.容量測試 B.疲勞測試C.負載測試 D.壓力測試 1.00/1.00
正確答案:D
5單選(1分)下列關于alpha測試的描述中正確的是:( )。
A.alpha測試是系統測試的一種
B.alpha測試是驗收測試的一種1.00/1.00
C.alpha測試是集成測試的一種
D.alpha測試一定要真實的最終軟件用戶參加
正確答案:B
5.7 課后作業
習題5
1(1分)軟件測試是軟件質量保證的重要手段,下述哪種測試是軟件測試的最基礎環節?( )
A.集成測試 B.單元測試 C.系統測試 D.驗收測試
參考答案:B
2(1分)增量式集成測試有3種方式:自頂向下增量測試方法,( )和混合增量測試方式。
A.自下向頂增量測試方法
B.自底向上增量測試方法
C.自頂向上增量測試方法
D.自下向頂增量測試方法
參考答案:B
3(1分)在軟件測試步驟按次序可以劃分為以下幾步:( )。
A、單元測試、集成測試、系統測試、驗收測試
B、驗收測試、單元測試、系統測試、集成測試
C、單元測試、集成測試、驗收測試、系統測試
D、系統測試、單元測試、集成測試、驗收測試
參考答案:A
4(1分)軟件驗收測試合格通過的標準不包括( )
A.軟件需求分析說明書中定義的所有功能已全部實現,性能指標全部達到要求。
B.至少有一項軟件功能超出軟件需求分析說明書中的定義,屬于軟件特色功能。
C.立項審批表、需求分析文檔、設計文檔和編碼實現一致。
D.所有在軟件測試中被發現的嚴重軟件缺陷均已被修復。
參考答案:B
5(1分)下列關于alpha測試的描述中正確的是:( )
A.alpha測試一定要真實的最終軟件用戶參加
B.alpha測試是集成測試的一種
C.alpha測試是系統測試的一種
D.alpha測試是驗收測試的一種
參考答案:D
6(1分)編碼階段產生的錯誤主要由( )檢查出來的。
A、單元測試 B、集成測試 C、系統測試 D、有效性測試
參考答案:A
7(1分)單元測試一般以( )為主。
A、白盒測試 B、黑盒測試 C、系統測試 D、分析測試
參考答案:A
8(1分)單元測試的測試用例主要根據( )的結果來設計。
A、需求分析 B、源程序 C、概要設計 D、詳細設計
參考答案:D
9(1分)集成測試的測試用例是根據( )的結果來設計。
A、需求分析 B、源程序 C、概要設計 D、詳細設計
參考答案:C
10(1分)集成測試對系統內部的交互以及集成后系統功能檢驗了何種質量特性( )
A、正確性 B、可靠性 C、安全性 D、可維護性
參考答案:A
11(1分)( )的目的是對即將交付使用的軟件系統進行全面的測試,確保最終軟件產品滿足用戶需求。
A、系統測試 B、集成測試 C、單元測試 D、驗收測試
參考答案:A
12(1分)單元測試中用來模擬被測模塊調用者的模塊是 ( )
A、父模塊 B、子模塊 C、驅動模塊 D、樁模塊
參考答案:C
13(1分)在自底向上測試中,要編寫( )。
A、測試存根 B、驅動模塊 C、樁模塊 D、 底層模塊。
參考答案:B
14(1分)以下哪種軟件測試屬于軟件性能測試的范疇( )。
A、接口測試 B、壓力測試 C、單元測試 D、正確性測試
參考答案:B
15(1分)下列關于α測試的描述中,正確的是( )
A.α測試采用白盒測試技術;
B.α測試不需要從用戶角度考慮問題;
C.α測試是系統測試的一種;
D.α測試是驗收測試的一種;
參考答案:D
16(1分)下列軟件屬性中,軟件產品首要滿足的應該是( )
A、功能需求 B、性能需求 C、可擴展性和靈活性 D、容錯糾錯能力
參考答案:A
17(1分)按照測試組織劃分,軟件測試可分為:開發方測試,第三方測試,( )。
A.集成測試 B.單元測試 C.用戶測試 D.灰盒測試
參考答案:C
18(1分)軟件可靠性是指在指定的條件下使用時,軟件產品維持規定的性能級別的能力,其子特性( )是指在軟件發生故障或者違反指定接口的情況下,軟件產品維持規定的性能級別的能力。
A、成熟性 B、易恢復性 C、容錯性 D、穩定性
參考答案:C
19(1分)下面哪項對驗收測試的描述不正確?( )
A、與系統測試不同的是以客戶業務需求為標準來進行測試
B、測試人員多由客戶方擔任,也可以客戶委托第三方來進行驗收測試
C、由資深的開發和測試人員來進行測試
D、不僅僅要驗收程序,還要驗收相關的文檔
參考答案:C
20(1分)對于軟件的β測試,下列哪些描述是正確的? ( )
A. β測試就是在軟件公司內部展開的測試,由公司專業的測試人員執行的測試。
B. β測試就是在軟件公司內部展開的測試,由公司的非專業測試人員執行的測試。
C. β測試就是在軟件公司外部展開的測試,由非專業的測試人員執行的測試。
D. β測試就是在軟件公司外部展開的測試,由專業的測試人員執行的測試。
參考答案:C
21(1分)在程序測試中,用于檢查程序模塊或子程序之間的調用是否正確的靜態分析方法是 ( )
A、操作性分析 B、可靠性分析 C、引用分析 D、接口分析
參考答案:C
22(1分)用于考察當前軟硬件環境下軟件系統所能承受的最大負荷并幫助找出系統瓶頸所在的是( )。
A、壓力測試 B、容量測試 C、負載測試 D、疲勞測試
參考答案:A
23(2分)集成測試以_______________說明書為指導,驗收測試以_______________說明書為指導。
參考答案:概要設計 軟件規格
24(2分)軟件驗收測試可分為 2 類:__________________、__________________。
參考答案:α+β測試 正式驗收測試
25(1分)____________指軟件系統被修改或擴充后重新進行的測試。
參考答案:回歸測試
26(1分)____________是在軟件開發公司內模擬軟件系統的運行環境下的一種驗收測試。
參考答案:α測試
27(1分)____________的依據是軟件規格說明書。
參考答案:驗收測試
28(1分)(判斷)單元測試通常由開發人員進行。 ( )
參考答案:對
29(1分)(判斷)測試應從"大規模"開始,逐步轉向"小規模"。 ( )
參考答案:錯
30(1分)(判斷)負載測試是驗證要檢驗的系統的能力最高能達到什么程度。 ( )
參考答案:錯
31(1分)(判斷)為了快速完成集成測試,采用一次性集成方式是適宜的。 ( )
參考答案:錯
32(1分)(判斷)驗收測試是站在用戶角度的測試。 ( )
參考答案:對
33(1分)(判斷)自底向上集成需要測試員編寫樁模塊。 ( )
參考答案:錯
34(1分)(判斷)β測試是集成測試的一種。 ( )
參考答案:錯
35(1分)(判斷)如何看待軟件產品內部的缺陷,開發者和用戶的立場是一致的。 ( )
參考答案:錯
36(13分)試針對如下程序代碼設計測試腳本。
public class GCD { public int getGCD(int x,int y) {if(x<1||x>100) { System.out.println("數據超出范圍!"); return -1; } if(y<1||y>100) { System.out.println("數據超出范圍!"); return -1; } int max,min,result = 1; if(x>=y) { max = x; min = y; } else { max = y; min = x; } for(int n=1;n<=min;n++) { if(min%n==0&&max%n==0) { if(n>result) result = n;} } System.out.println("因數:"+result); return result;} }參考答案:
(1)設計測試腳本,對GCD類的getGCD方法實現語句覆蓋測試。
public class GCD { public void testDemo_yuju(){int test1=getGCD(-1,100);int test2=getGCD(2,1);System.println.out(test1+ test2);}public int getGCD(int x,int y) {if(x<1||x>100) { System.out.println("數據超出范圍!"); return -1; } if(y<1||y>100) { System.out.println("數據超出范圍!"); return -1; } int max,min,result = 1; if(x>=y) { max = x; min = y; } else { max = y; min = x; } for(int n=1;n<=min;n++) { if(min%n==0&&max%n==0) { if(n>result) result = n;} } System.out.println("因數:"+result); return result;} }(2)設計測試腳本,對GCD類的getGCD方法實現條件覆蓋測試。
public class GCD { public void testDemo_tiaojian(){int test1=getGCD(-1,-1);int test2=getGCD(100,100);int test3=getGCD(2,1);int test4=getGCD(1,2);System.println.out(test1+ test2+ test3+ test4);}public int getGCD(int x,int y) {if(x<1||x>100) { System.out.println("數據超出范圍!"); return -1; } if(y<1||y>100) { System.out.println("數據超出范圍!"); return -1; } int max,min,result = 1; if(x>=y) { max = x; min = y; } else { max = y; min = x; } for(int n=1;n<=min;n++) { if(min%n==0&&max%n==0) { if(n>result) result = n;} } System.out.println("因數:"+result); return result;} }37(8分)設有程序段ModuleA和 ModuleB如下,
public class ModuleA { public static double operate(double x) { // 模塊A內部進行處理 // ... double r = x/2; // 調用模塊B double y = ModuleB.operate(r); // 繼續處理 // ... return y; } } public class ModuleB { public static double operate(double r) { // 模塊B內部進行處理 // ... double temp = Pi*r * r * r *4/3; // 繼續處理 // ... double y = temp; return y; } }參考答案:
(1)閱讀程序,請說明這兩段程序合起來的功能是什么?
輸入直徑,求圓球的體積(2)已知變量x一開始就有一定的誤差△x,請分析 ModuleA.operate(x)執行完畢后,返回結果y的相對誤差有多大?
38(6分) 設有兩段代碼ModuleA和 ModuleB如下,它們由不同的程序員開發。
public class ModuleA { /*** 實現把 str1 中包含的 str2 去掉后的內容返回的功能 * @param str1 字符串1* @param str2 字符串2 * @param 返回處理的結果 */ public String operate(String str1, String str2) { return str1.replace(str2, ""); } }public class ModuleB { private ModuleA moduleA; public void setModuleA(ModuleA moduleA) { this.moduleA = moduleA; } /** * 模塊B的具體處理操作中,調用了模塊A的接口 */ public String operate(String str1, String str2) { // str1 待替換的目標串 // str2 原串 return moduleA.operate(str1, str2); } }參考答案:
(1)試分析對這兩段代碼進行集成測試時會出現什么問題?
(2)試設計兩個測試數據,一個能發現這一問題,另一個則不能發現這一問題。
39(7分)某連鎖機構網站有注冊賬號5萬個,平均1天大約有12000個用戶要訪問該系統,用戶一般在7點——22點使用該系統,在一天的時間內,用戶使用系統的平均時長約為0.5小時。假設用戶登錄訪問該系統符合泊松分布,為進行并發測試,請估算系統的平均并發用戶數C_avg和并發用戶峰值數C_max。
參考答案:
系統的平均并發用戶數C_avg=nL/T=12000*0.5/(22-7)=400 并發用戶峰值數C_max~=400+3*400^1/2=4606 白盒測試
6.1 面向對象測試
以下哪句話是不正確的( )?
A.測試過的軟件就沒有缺陷
B.測試的目的是盡可能多的發現程序中的缺陷
C.成功的測試在于發現了迄今尚未發現的缺陷
D.測試是為了驗證程序是否符合需求
正確答案:A
6.2 單元測試
1單選(1分)封裝這一特征簡化了對對象的使用,但同時也給測試結構的()、測試路徑的選取、測試數據的生成等帶來了困難。
A.分析1.00/1.00B.定義C.合成D.提取
正確答案:A
2單選(1分)通過繼承機制,子類可以繼承父類的特點和功能,這一特征為( )的擴散提供了途徑。
A.缺陷1.00/1.00B.代碼C.數據D.消息
正確答案:A
3單選(1分)如果父類帶有缺陷,派生出的( )也會帶有缺陷。繼承使代碼的重用率得到了提高,但同時也使缺陷的傳播幾率增加。
A.函數B.代碼C.子類1.00/1.00D.軟件
正確答案:C
4單選(1分)面向對象軟件測試是根據面向對象的軟件開發過程結合面向對象的特點提出的。它不包括:
A.對象封裝測試1.00/1.00B.類測試技術C.對象交互測試技術D.分析與設計模型測試技術
正確答案:A
5單選(1分)應該在軟件的其它部分使用該類之前來執行對類的測試。防止因未經測試的類被使用而導致( )。
A.執行失敗B.代碼出錯C.缺陷傳導和擴散1.00/1.00D.測試異常
正確答案:C
6.3 課后作業
習題六
1(1分)以下哪句話是不正確的:
A、測試過的軟件就沒有缺陷
B、測試的目的是盡可能多的發現程序中的缺陷
C、成功的測試在于發現了迄今尚未發現的缺陷
D、測試是為了驗證程序是否符合需求
正確答案:A
2(1分)下列項目中不屬于測試文檔的是 ( )
A、測試計劃 B、測試用例 C、 被測程序 D、測試報告
正確答案:C
3(1分)軟件測試管理不包括: ( )
A、測試團隊管理 B、缺陷管理 C、軟件需求管理 D、測試用例管理
正確答案:C
4(1分)軟件測試風險管理包含( )和風險控制兩方面內容。
A、風險排序 B、風險識別 C、風險評估 D、風險分析
正確答案:C
5(1分)編寫測試計劃的目的不包括( )
A、使測試工作順利進行
B、使項目參與人員溝通更舒暢
C、使測試工作更加系統化
D、使測試內容更少,完成更快
正確答案:D
6(1分)下面哪項內容不包含在測試計劃文檔中? ( )
A. 測試策略 B. 測試用例 C. 測試時間安排 D. 測試標準
正確答案:B
7(2分)軟件測試項目的生命周期包括測試需求分析、_________、_________、測試開發、測試執行、評估(或總結)等階段。
正確答案:測試計劃 測試設計
8(2分) 軟件測試中,________描述測試的整體方案,________描述依據測試用例找出的問題。
正確答案:測試計劃 缺陷報告
9(1分)________________________就是以測試項目為管理對象,通過一個臨時性的專門的測試組織,運用專門的軟件測試知識、技能、工具和方法,對測試項目進行計劃、組織、執行和控制,并在時間成本、軟件測試質量等方面進行分析和管理活動。
正確答案:測試項目管理
10(1分)軟件測試文檔為測試項目的組織、規劃和管理提供了一個____________。
正確答案:規范化的架構
11(1分)(判斷)測試人員要堅持原則,缺陷未完全修復堅決不予通過。 ( )
正確答案:錯
12(1分)(判斷)在軟件測試中, 預設輸出結果是檢驗待測系統在特定執行下是否正確的方法。 ( )
正確答案:對
13(1分)(判斷)發現缺陷越多的模塊隱藏的缺陷可能也越少。 ( )
正確答案:對
14(10分)什么是軟件測試文檔,測試項目中,主要的測試文檔有哪些?
正確答案:
15(10分)軟件測試工作和軟件開發工作相比,有哪些特點。
正確答案:
16(6分)試分析測試用例為什么需要更新?
參考答案:
7 自動化測試
7.1 自動化測試概述
下列( )不是軟件自動化測試的優點。
A.速度快、效率高
B.準確度和精確度高
C.能提高測試的質量
D.能充分測試軟件
正確答案:D
7.2 自動化黑盒測試
過JUnit提供的API可以編寫出測試結果明確、可重用的單元測試( )
A.計劃B.腳本C.數據D.方案
正確答案:B
7.3 單元測試
1單選(1分)( )可以讓并不熟悉腳本語言的軟件測試人員也可以方便的得到測試腳本。
A.錄制技術 1.00/1.00B.數據驗證點技術C.數據驅動技術 D.回放技術
正確答案:A
2單選(1分)在自動化黑盒測試工具中,通過錄制來得到( ),可以減少工作量。
A.測試文件 B.測試腳本 1.00/1.00C.測試數據D.測試設計
正確答案:B
3單選(1分)自動化黑盒測試工具中,腳本錄制好后,只要執行腳本,就可以把測試過程重做一遍,這被稱為( )。
A.錄制B.回放 1.00/1.00C.復制 D.重播
正確答案:B
4單選(1分)在自動化黑盒測試工具中,通過錄制來得到( ),可以減少工作量。
A.測試文件 B.測試設計 C.測試腳本1.00/1.00D.測試數據
正確答案:C
5單選(1分)關于自動化測試局限性的描述,以下描述錯誤的是( )。
A.自動測試不能提高測試覆蓋率
B.自動測試比手工測試發現的缺陷少
C.自動化測試不能取代手工測試
D.自動化測試對測試設計依賴性極大
正確答案:B
7.4 課后作業
1(1分)對軟件文檔的要求不包括( )。
A、完整性 B、美觀性 C、一致性 D、易理解性。
正確答案:B
2(1分)軟件設計階段的質量控制主要采取的方式是( )。
A、評審 B、白盒測試 C、黑盒測試 D、動態測試
正確答案:A
3(1分)以下不屬于軟件評審內容的是( )。
A、管理評審 B、技術評審 C、文檔評審 D、人員評審
正確答案:D
4(1分)以下不是評審工具的是( )。
A、Gerrit B、Jupiter C、JaCoCo D、SourceMonitor
正確答案:C
5(1分)評審會議結束后,應當整理得到________作為存檔材料。
參考答案:評審表單
6(2分)對評審會議發現的問題和缺陷要進行分析和跟蹤,有的缺陷將________,有的缺陷則必須________。
正確答案:被有條件的接受 修正
7(3分)驗收評審的內容主要是:開發的軟件系統是否已達到________________規定的各項技術指標;________是否完整、正確;________是否齊全,是否符合有關標準等。
正確答案:軟件需求說明書 使用手冊 文檔
8(1分)按照 IEEE 的定義,________是軟件開發組之外的人員或小組,對軟件需求、設計或代碼,進行詳細檢查的一種正式評價方法。
正確答案:評審
9(1分)除軟件測試之外,________是另一種軟件質量控制和軟件質量保證的有效方法。
正確答案:評審
10(2分)大中型軟件的質量更多的取決于________和________質量,而不僅僅是編碼質量。
正確答案:分析 設計(不確定)
11(1分)正式評審一般以___________的形式進行。
參考答案:會議
12(1分)(判斷)技術評審既是一種技術手段,也是一種質量管理手段。 ( )
正確答案:對
13(1分)(判斷)詳細設計評審是所有的評審活動中最難的一個。 ( )
正確答案:錯 需求
14(1分)(判斷)評審的主要目標在于檢測錯誤、核對與標準的偏離。 ( )
正確答案:對
15(1分)(判斷)數據庫設計一般要求遵循4NF。 ( )
正確答案:錯
16(1分)(判斷)應選擇那些最復雜和最危險的部分進行評審。 ( )
正確答案:對
17(1分)(判斷)應該將發現缺陷的工作推后,最后來處理,這樣效率高。 ( )
正確答案:錯
18(8分)什么是軟件評審,主要的分階段軟件評審活動有哪些?
參考答案:
19(12分)試分析通過評審可以有哪些收效?
參考答案:
9 軟件質量與質量保證
9.1 軟件錯誤及分類
軟件測試是按照特定的規程,( )的過程。
A.發現軟件錯誤B.說明程序正確C.證明程序沒有錯誤D.設計并運行測試用例
正確答案:A
9.2 程序中隱藏錯誤數量估計
采用Hyman分別測試法,兩個測試員同時互相獨立地對同一程序的兩個副本測試了 3 天時間,如果兩人發現的缺陷重合度低,則( )。
A.說明軟件中尚未發現的缺陷多
B.說明軟件中尚未發現的缺陷少
C.說明兩名測試員工作都很不盡責
D.說明兩名測試員工作都很盡責
正確答案:A
9.3 軟件質量
軟件驗證和確認是保證軟件質量的重要措施,它的實施應該針對( )
A.程序編寫階段
B.軟件開發的所有階段
C.軟件調試階段
D.軟件設計階段
正確答案:B
9.4 軟件質量模型
McCall 質量模型使用 3 種視角來定義和識別軟件產品的質量,其中不包括的是( )。
A.產品修正B.產品轉移C.產品運行D.產品設計
正確答案:D
9.5 軟件質量管理
軟件確認就是要證實我們是不是制造了正確的產品,要保證( )。
A.程序代碼正確B.設計方案正確C.做的東西正確D.做的過程正確
正確答案:C
9.6 軟件質量管理體系
CMMI中文全稱為( )
A.軟件能力成熟度模型
B.軟件能力成熟度模型集成
C.質量管理體系
D.軟件工程研究所
正確答案:B
9.7 單元測試
1單選(1分)軟件驗證和確認是保證軟件質量的重要措施,它的實施應該針對( )
A.軟件開發的所有階段 1.00/1.00
B.軟件調試階段
C.程序編寫階段
D.軟件設計階段
正確答案:A
2單選(1分)軟件的六大質量特性包括( )。
①功能性、可靠性 ②可用性、效率
③穩定性、可移植 ④多語言性、可擴展性
A.①②③ 1.00/1.00B.①②④C.①③④ D.②③④
正確答案:A
3單選(1分)軟件可靠性是指在指定的條件下使用時,軟件產品維持規定的性能級別的能力,其子特性( )是指在軟件發生故障或者違反指定接口的情況下,軟件產品維持規定的性能級別的能力。
A.可靠性依從性B.易恢復性 C.容錯性 1.00/1.00D.成熟性
正確答案:C
4單選(1分)對Web網站進行的測試中,屬于功能測試的是 ( )
A.鏈接測試 1.00/1.00B.連接速度測試 C.平臺測試D.安全性測試
正確答案:A
5單選(1分)CMMI中文全稱為( )。
A.軟件能力成熟度模型集成 1.00/1.00B.軟件工程研究所C.軟件能力成熟度模型 D.質量管理體系
正確答案:A
10 軟件測試組織和管理
10.1 人員和資源組織
軟件測試人員的工作職責不包括:( )
A.制定測試計劃
B.設計測試用例
C.執行測試過程
D.對軟件缺陷進行修復
正確答案:D
10.2 過程和進度管理
下列各項中( )不是一個測試計劃所應包含的內容。
A.測試資源、進度安排
B.測試預期輸出
C.測試范圍
D.測試策略
正確答案:B
10.3 文檔、用例和缺陷管理
文檔測試不包括測試文檔的( )。
A.完整性B.美觀性C.一致性D.易理解性。
正確答案:B
10.4 單元測試
1單選(1分)軟件測試人員的工作職責不包括:( )
A.設計測試用例
B.執行測試過程
C.制定測試計劃
D.對軟件缺陷進行修復
正確答案:D
2單選(1分)軟件質量保證與測試人員需要的的基本素質有( )
A.計算機專業技能
B.行業知識
C.以上都是1.00/1.00
D.測試專業技能
正確答案:C
3單選(1分)軟件測試是按照特定的規程,( )的過程。
A.證明程序沒有錯誤
B.設計并運行測試用例
C.說明程序正確
D.發現軟件錯誤
正確答案:D
4單選(1分)( )是對要執行的軟件測試及測試的結果進行描述、定義、規定和報告的任何書面或圖示信息。
A.軟件測試腳本
B.軟件測試文檔
C.軟件測試用例
D.軟件測試結果
正確答案:B
5單選(1分)缺陷跟蹤就是要確保每個被發現的缺陷最終都能夠被( ),而不是不了了之 。
A.隱藏B.改正C.發現D.關閉
正確答案:D
10.5 課后作業
1(1分)
軟件質量保證與測試人員需要的的基本素質有( )
A、計算機專業技能 B、測試專業技能 C、行業知識 D、以上都是
參考答案:D
2(1分)CMM中文全稱為( )
A、軟件能力成熟度模型
B、軟件能力成熟度模型集成
C、質量管理體系
D、軟件工程研究所
參考答案:A
3(1分)CMM將軟件組織的軟件能力成熟度描述為( )
A、二級 B、三級 C、四級 D、五級
參考答案:D
4(1分)軟件的六大質量特性包括( )。
①功能性、可靠性 ②可用性、效率 ③穩定性、可移植 ④多語言性、可擴展性
A、①②③ B、②③④ C、①③④ D、①②④
參考答案:A
5(1分)軟件驗證和確認是保證軟件質量的重要措施,它的實施應該針對( )
A、程序編寫階段 B、軟件開發的所有階段
C、軟件調試階段 D、軟件設計階段
參考答案:B
6(3分)軟件缺陷按嚴重程度被分為6個等級,分別是:_________、_________、_________、一般錯誤、較小錯誤、測試建議。
參考答案:嚴重錯誤 主要錯誤 次要錯誤
7(1分)軟件對屬于各種質量因素的需求的符合性是由____________來測量的。
參考答案:軟件質量度量
8(1分)Burnstein博士提出了________,它描述了測試過程,是軟件測試得到良好計劃和控制的基礎。
參考答案:?Test Maturity Model(TMM即軟件能力成熟度模型)
9(2分)按照時間點來區分,軟件質量特性度量有兩類_________和_________。
參考答案:預測型 驗收型
10(2分)CMM內容包含初始級、_________、_________、可重復級和可優化級五個等級。
參考答案:定義級 定量管理級
11(3分)McCall模型劃分了_________、_________、_________三個緯度的11個軟件質量因素。
參考答案:軟件運行 軟件轉移 軟件修改
12(1分)_________是指軟件產品中能滿足給定需求的性質和特性的總體。
參考答案:軟件質量
13(1分)(判斷)軟件質量保證的獨特性是由軟件產品不同于其他制造產品的本質決定的。( )
參考答案:對
14(1分)(判斷)TMM 分解為3個級別,在最高級中,測試不是行為,而是一種自覺的約束,不用太多的測試投入,即可產生低風險的軟件。( )
參考答案:對
15(1分)(判斷)CMMI并不包括CMM,更加適用于企業的過程改進實施。( )
參考答案:錯
16(1分)(判斷)只有客戶才會有興趣透徹定義軟件需求以確保他約定的軟件產品的質量。( )
參考答案:錯
17(16分)某軟件公司為某電影院設計開發了一款票務系統,包括票務管理、賬號管理、在線購票、統計分析等功能,該軟件計劃長期使用,部分模塊將用于其他類似軟件,軟件在使用時應能接入數字化城市平臺。試結合軟件質量模型分析應從哪些特性來分析評價這一軟件的質量。
參考答案:
11 本科目完結
總結
以上是生活随笔為你收集整理的慕课软件质量保证与测试(习题集)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VOIP是什么意思
- 下一篇: 命令行下的mysql的基本操作