
軟件測試期末考試
--馮君貴州大學
一、判斷正誤題
1.測試是調試的一個部分(╳)
2.軟件測試的目的是盡可能多的找出軟件的缺陷。(√)
3.程序中隱藏錯誤的概率與其已發現的錯誤數成正比(√)測試是驗收測試的一種。(√)
5.測試人員要堅持原則,缺陷未修復完堅決不予通過。(√)
6.項目立項前測試人員不需要提交任何工件。(╳)
7.單元測試能發現約80%的軟件缺陷。(√)8.測試的目的是發現軟件中的錯誤。(√)
9.代碼評審是檢查源代碼是否達到模塊設計的要求。(√)
10.自底向上集成需要測試員編寫驅動程序。(√)二、選擇題
1、實施缺陷跟蹤的目的是:(ABCD)
A、軟件質量無法控制B、問題無法量化C、重復問題接連產生
D、解決問題的知識無法保留E、確保缺陷得到解決F、使問題形成完整的閉環處理
2、使用軟件測試工具的目的:(ABCDF)
A、幫助測試尋找問題B、協助問題的診斷C、節省測試時間
D、提高Bug的發現率E、更好的控制缺陷提高軟件質量F、更好的協助開發人員
3、編寫測試計劃的目的是:(ABC)
A、使測試工作順利進行B、使項目參與人員溝通更舒暢
C、使測試工作更加系統化D、軟件工程以及軟件過程的需要
E、軟件過程規范化的要求F、控制軟件質量
4、選出屬于黑盒測試方法的選項(B)
A、測試用例覆蓋B、輸入覆蓋C、輸出覆蓋
D、分支覆蓋E、語句覆蓋F、條件覆蓋
5、以測試的形態分測試可以分為:(ABC)
A、建構性測試B、系統測試C、專項測試
D、單元測試E、組件測試F、集成測試6、進行軟件質量管理的重要性有:()
A、維護降低成本B、法律上的要求C、市場競爭的需要
D、質量標準化的趨勢E、軟件工程的需要F、CMM過程的一部分G、方便與客戶進一步溝通為后期的實施打好基礎
7、在GB/T17544中,軟件包質量要求包括三部分,即產品描述要求、(A)、程序和數據要求。
A.用戶文檔要求B.系統功能要求
C.設計要求說明D.軟件配置要求
8、典型的瀑布模型的四個階段是:(ABCD)
A、分析B、設計C、編碼
D、測試E、需求調研F、實施9、()可以作為軟件測試結束的標志。
A.使用了特定的測試用例B.錯誤強度曲線下降到預定的水平
C.查出了預定數目的錯誤D.按照測試計劃中所規定的時間進行了測試
10、導致軟件缺陷的原因有很多,A—D是可能的原因,其中最主要的原因包括(ABCD)。
A.軟件需求說明書編寫的不全面,不完整,不準確,而且經常更改
B.軟件設計說明書C.軟件操作人員的水平
D.開發人員不能很好的理解需求說明書和溝通不足三、名詞解釋
測試:Beta測試是從用戶角度進行的測試,是由軟件的多個用戶在一個
或多個用戶的實際使用環境下進行的測試。它是在開發者無法控制的軟件環境下
進行的軟件現場應用。
2.負載測試:負載測試是一個通過分析軟件應用程序和支撐架構,模擬真實環境的使用,來確定能夠接受的性能的過程。
3.軟件測試活動生命周期:是指軟件從進入測試到退出測試的過程中,所要經
歷的引入程序錯誤、通過測試發現錯誤和清附加條件 除程序錯誤的幾個階段。
4.改進的三明治集成:利用較高的并行度彌補三明治集成中不能充分測試中間
層的缺點。但根據中間層選擇是否恰當,可能增加驅動模塊和樁模塊設計的工作量。
5.驅動模塊相當于所測模塊的主程序。它接收測試數據,把這些數據傳送給所
測模塊,最后再輸出實際測試結果。四、簡答題
軟件的缺陷等級應如何劃分?
致命的:致命的錯誤,造成系統或應用程序崩潰、死機、系統懸掛,或造成數據丟失、主要功能完全喪失等。
嚴重的:嚴重錯誤,指功能或特性沒有實現,主要功能部分喪失,次要功能完全喪失,或致命的錯誤聲明。
一般的:不太嚴重的錯誤,這樣的軟件缺陷雖然不影響系統的基本使用,但沒有
很好地實現功能,沒有達到預期效果。如次要功能喪失,提示信息不太準確,或用戶界面差,操作時間長等。
微小的:一些小問題,對功能幾乎沒有影響,產品及屬性仍可使用,如有個別錯
別字、文字排列不整齊等。階段評審與同行評審。
同行評審是一種重要而有效的工程方法,在軟件產品工程中調用此方法,可通過
法根式審查、結構化走查或者一些其他的學院式的評審方法加以實施。其目的是
及早和高效地去除軟件工作中的缺陷,必然結果是增強對軟件工作產品和可預防缺陷的了解。
階段評審是利用在需求分析階段所選擇并制定的標準、規范以及計劃的安排,對
軟件工程各階段的進展、完成質量及出現的問題進行正式評審,確保過程計劃并遵守標準和規范執行,然后形成報告。當發現問題是,要準尋逐級解決的原則,
將處理結果通知相關人員,記錄解決過程及結果以作日后改進重要參考資料。
兩者都是有關軟件質量管理和保證的重要內容,二者相輔相成,缺一不可。
安全性測試屬于軟件測試的哪個階段?并試闡述安全測試的概念和用以評判系
統安全性性能的主要指標。是系統測試的一種類型,
安全性測試就是要驗證系統內的保護機制能否抵御入侵者的攻擊。安全性測試的
測試人員需要在測試活動中,撒氣不同的入侵方式來攻擊系統的安全機制,想盡一切辦法來獲取系統內的保密信息。
系統安全性性能的指標:有效性:啟動嚴格的安全性性能所花費的時間占啟動整
個系統所花費時間的比例。生存性:當錯誤發生時,系統對緊急操作的支持,對
錯誤的補救措施以及恢復到正常操作的能力,即系統的抗挫能力。精確性:衡量
系統安全性控制的精度指標,圍繞所出現的錯誤數量、發生頻率及其嚴重性判斷。
反應時間:出錯時系統響應速度的快慢,一個安全性較強的系統要具備快速的反
應速度。吞吐量:用戶和服務請求的峰值和平均值。
單元測試策略主要有哪些?并試描述這些策略?單元測試策略主要有三種方式:
1.自頂向下的單元測試策略:從頂層調用的單元做成樁模塊;對第二層測試,使
用上面已測試的單元做驅動模塊;依次類推,直到全部單元測試結束。
2.自底向上的單元測試策略:先對模塊調用的最底層模塊進行測試,模擬調用該
模塊的模塊為驅動模塊;其次,對上一層模塊進行單元測試,用已經被測試過的模塊做樁模塊,依次類推,直到全部單元測試結束。
3.孤立測試的單元測試策略:無需考慮每個模塊與其他模塊之間的關系,分別為
每個模塊單獨設計樁模塊和驅動模塊,逐一完成所有單元模塊的測試。
測試結束的標準是什么?試題二
一、判斷正誤題(每小題1分,共10分)1.測試是證明軟件正確的方法。(╳)
2.負載測試是驗證要檢驗的系統的能力最高能達到什么程度。(√)
3.測試中應該對有效和無效、期望和不期望的輸入都要測試。(√)
4.對于連鎖型分支結構,若有n個判定語句,則有2n條路徑。(√)5.驗收測試是由最終用戶來實施的。(√)
語句概念簡單,使用方便,在某些情況下,保留GOTO語句反能使寫出的程序更加簡潔。(√)
7.測試人員要堅持原則,缺陷未修復完堅決不予通過。(√)
8.黑盒測試也稱為結構測試。(╳)
9.代碼評審員一般由測試員擔任。(╳)10.集成測試計劃在需求分析階段末提交。(╳)
二、不定項選擇題(每題可能有一個或多個選項應選,每題2分,共20分。多選不得分,少選僅得1分。)
1.軟件驗收測試的合格通過準則是:(AD)
A.軟件需求分析說明書中定義的所有功能已全部實現,性能指標全部達到要求。B.所有測試項沒有殘余一級、二級和三級錯誤。
C.立項審批表、需求分析文檔、設計文檔和編碼實現一致。D.驗收測試工件齊全。
2.軟件測試計劃評審會需要哪些人員參加?(ABCD)
A.項目經理
B.SQA負責人
C.配置負責人D.測試組
3.下列關于alpha測試的描述中正確的是:(AD)
A.alpha測試需要用戶代表參加
B.alpha測試不需要用戶代表參加
C.alpha測試是系統測試的一種
D.alpha測試是驗收測試的一種
4.測試設計員的職責有:(BC)
A.制定測試計劃B.設計測試用例
C.設計測試過程、腳本D.評估測試活動
5.軟件實施活動的進入準則是:(ABC)
A.需求工件已經被基線化
B.詳細設計工件已經被基線化
C.構架工件已經被基線化D.項目階段成果已經被基線化
6、典型的瀑布模型的四個階段是:(ABCD)
A、分析B、設計C、編碼
D、測試E、需求調研F、實施
7.下面的哪一項測試步驟中需要進行局部數據結構測試:(A)
A、單元測試
B、集成測試
C、確認測試D、系統測試
8.從是否需要執行被測軟件的角度,軟件測試技術可劃分的類型是:(AC)
A、靜態測試
B、黑盒測試
C、動態測試D、白盒測試
9.從測試階段角度,測試結束的正確順序是:(B)
A、單元測試、集成夢到衣服 測試、系統測試、確認測試
B、單元測試、系統測試、集成測試、確認測試
C、確認測試、集成測試、系統測試、單元測試
D、確認測試、系統測試、集成測試、單元測試
10.軟件的六大質量特性包括:(A)
A.功能性、可靠性、可用性、效率、可維護、可移植B.功能性、可靠性、可用性、效率、穩定性、可移植
。
C.功能性、可靠性、可擴展性、效率、穩定性、可移植
D.功能性、可靠性、兼容性、效率、穩定性、可移植
1.什么是軟件測試
2.試述軟件測試活動的生命周期?
3.集成測試策略主要有哪些?并試描述3個以上的具體策略?
答:1、大爆炸集成(P153):屬于非增值式集成的一種方法,也稱為一次性組
裝或整體拼裝。這種集成策略的做法就是把所有通過單元測試的模塊一次性集成
到一起進行測試,不考慮組件之間的互相依賴性及可能存在的風險。2、三明治
集成(P158):一種混合增量式測試策略,綜合了自頂向下和自底向上兩種集成
方法的優點,因此也屬于基于功能分解的集成。這種方法樁和開發工作都比較小,
但增加了定位缺陷的難度。3、自頂向下集成:就是按照系統層次結構圖,以主
程序模塊為中心,自上而下按照深度優先或者廣度優先策略,對各個模塊一邊組
裝一邊進行測試。又可分為深度優先集成和廣度優先集成兩種方式。4、自底向
上集成:從依賴性最小的底層模塊開始,按照層次結構圖,逐層向上集成,驗證
系統的穩定性。5、高頻集成:高頻集成測試是指同步于軟件開發過程,每隔一
段時間對開發團隊的現有代碼進行一次集成測試。6、分層集成、分布式集成、
基于路徑、功能、進度、風險、事件、使用等的集成等13種。
4.恢復性測試屬于軟件測試的哪個階段?并試闡述恢復性測試的概念和進行恢復性測試分析時主要應考慮的問題。
答:恢復性測試使系統測試階段的一種方法,也叫容錯測試,用來檢查系統的容
錯能力。通常若計算機系統出現錯誤,就必須在一定時間內從錯誤中恢復過來,
修正錯誤并重新啟動系統。在進行恢復性測試時,要考慮的主要問題有:恢復期
間的安全性過程。恢復處理日志方面的能力。當出現供電問題時的恢復能力。恢復操作后系統性能是否下降。
常用的恢復測試用例的設計方法:規范導出法、錯誤猜測法、基于故障的測試。
5.請簡述單元測試進入的準則?
答:包括要素和判斷準則:要素是詳細說明書和單元測試用例,判斷準則是經過
審查=獲得批準和進入配置庫。
試題三:
一、判斷題(每題1分,12分,正確的√,錯誤的╳)1.軟件測試的目的是盡可能多的找出軟件的缺陷。()
軟件測試的目的就是為了發現軟件中的缺陷,從這個意義上面說上面的這個論斷
是正確的。不少人會認為軟件測試可以保證軟件的質量,其實這個觀點是錯誤,
測試只是軟件質量控制中的一個角色,其活動并不能達成軟件質量保證的效果。
所以不要認為一個公司里面如果有了軟件測試人員,產品的質量就會好起來。2.Beta測試是驗收測試的一種。(╳)
Beat測試和驗收測試是兩種不同的測試。驗收測試的目的是為了以發現”未實
現的需求”為目的,以評估”適合使用”為目標,該類測試的不是以發現缺陷為
主要目的。beta測試是一模擬真實的使用環境從而發現缺陷的一種測試。所以兩者之間的是非包容關系。
3.驗收測試是由最終用戶來實施的。()
上面說到了驗收測試的目的和目標,所以驗收測試也可是是軟件生產的企業內部
人員來實施。例如產品經理。當軟件以項目的形式出現,那么驗收測試由最終用
戶來實施的情況是比較長見的。但是對于產品形式的軟件,生產企業內部的驗收測試會更多。
4.項目立項前測試人員不需要提交任何工件。()
應該說這道題目沒有明確的答案,在項目立項前測試人員是不是要把一些準備工
作以工件的形式給記錄下來是完全取決于該企業的軟件開發過程的要求。同時不
同企業,立項前要達成的一些必要條件也是大相徑庭的。應該說這一題目出的不
是很好,如果你是出題人這家企業的測試工程師,那么就應該有一個明確的答案。
5.單元測試能發現約80%的軟件缺陷。()
同樣這一題目也沒有標準答案。因為該數據的來源和其統計的方法,樣本都沒有
一個工業標準。這樣出來的數據同樣不具有權威性。這里我可以說一個簡單的例
子,在用ASP,php這類腳本語言開發網頁的時候是根本沒有復雜的單元測試。那
么這樣的數字應用在網站開發上面是否有意義,還是值得商榷的。所以這道題目出的不好,沒有明確的答案
6.代碼評審是檢查源代碼是否達到模塊設計的要求。()
代碼審查是一種靜態技術,從這個意義上說代碼復查是需要和其他的一些動態測
試技術配合才能檢查代碼是否符合設計的要求7.自底向上集成需要測試員編寫驅動程序。()
這道題目大家看下top-down和down-top的集成測試示意圖就能得出明確的答
案。這里需要了解的是什么是驅動測試程序,什么是樁程序。如果集成組件數量
眾多,多關系層次,那么不論是什么類型的集成測試。驅動程序和樁程序都是需要開發的。
8.負載測試是驗證要檢驗的系統的能力最高能達到什么程度。()
關于負載測試和壓力測試在論壇中的帖子中有詳細的解釋,大家可以去看一下就能得出正確的答案
9.測試人員要堅持原則,缺陷未修復完堅決不予通過。()
同樣,這一題沒有正確的答案。缺陷是否修復是需要聽取測試人員的意見,但測
試人員的意見非決定性。所以還是要看一個企業賦予測試人員有多大的權力。10.代碼評審員一般由測試員擔任。()
如果測試員有這個水平,那么當然是可以參加的。不過大多數的企業不會讓普通的測試人員參與代碼的評審。
11.我們可以人為的使得軟件不存在配置問題。()
首先大家先搞清楚什么是配置管理什么是軟件配置,從這道題目中看不出出題人
想問的是關鍵工程中的配置管理還是單純的軟件配置。但是可以肯定的是不論是何種情況,答案均是否定的。
12.集成測試計劃在需求分析階段末提交。()
集成測試計劃在開發人員完成軟件集成計劃之后就可以開始進行了。所以在需求
分析階段之后提交是不現實的事情,應該在軟件的設計階段后,編碼前。
二、不定項選擇題(每題2分,10分)1.軟件驗收測試的合格通過準則是:()
A.軟件需求分析說明書中定義的所有功能已全部實現,性能指標全部達到要求。B.所有測試項沒有殘余一級、二級和三級錯誤。
C.立項審批表、需求分析文檔、設計文檔和編碼實現一致。D.驗收測試工件齊全。
回答這道題,你必須是這家企業的員工。前面說到了驗收測試的目的和目標,一
個是需求必須實現,二是證明軟件是適合使用的。這樣能滿足這兩個通用標準就
可以了。當然有些軟件企業會對驗收測試標準做一些調整。
2.軟件測試計劃評審會需要哪些人員參加?()
A.項目經理
B.SQA負責人
C.配置負責人D.測試組
上面的4種角色都需要參與
3.下列關于alpha測試的描述中正確的是:()
A.alpha測試需要用戶代表參加
B.alpha測試不需要用戶代表參加
C.alpha測試是系統測試的一種D.alpha測試是驗收測試的一種
首先大家需要知道alpha測試是系統級別的測試,該測試是在一個受控的環境中
進行的。用戶需要直接參與進來。所以答案應該是AD
4.測試設計員的職責有:()
A.制定測試計劃
B.設計測試用例
C.設計測試過程、腳本D.評估測試活動
合理的答案的是BC,同時要看軟件企業對該類人員的職責是如何定義。
5.軟件實施活動的進入準則是:()
A.需求工件已經被基線化
B.詳細設計工件已經被基線化
C.構架工件已經被基線化D.項目階段成果已經被基線化
先要了解一下什么是基線。這個是軟件配置管理中一個重要的概念。工作產品必
須納入到一定的基線里面。所以選擇ABC是必定的,至于是否選擇D要看這家企業自身的標準了
填空題(每空1分,24分)
1.軟件驗收測試包括___、___、____三種類型。
軟件驗收測試包括正式驗收測試、alpha測試、beta測試三種測試。
2.系統測試的策略有功能測試、、、、易用性測試、、、、、、、、
、、等15種方法。
系統測試的策略有很多種的,我知道的有性能測試、負載測試、強度測試、
易用性測試、安全測試、配置測試、安裝測試、文檔測試、故障恢復測試、用戶
界面測試、恢復測試、分布測試、可用性測試。。。3.設計系統測試計劃需要參考的項目文檔有、和迭代計劃。
設計系統測試計劃需要參考的項目文檔有軟件測試計劃、軟件需求工件、和迭代計劃。
4.對面向過程的系統采用的集成策略有___、___兩種。
5.通過畫因果圖來寫測試用例的步驟為___、___、___、___及把因果圖轉換為
狀態圖共五個步驟。
利用因果圖生成測試用例的基本步驟是:
分析軟件規格說明描述中,哪些是原因(即輸入條件或輸入條件的等價類),
哪些是結果(即輸出條件),并給每個原因和結果賦予一個標識符。
分析軟件規格說明描述中的語義,找出原因與結果之間,原因與原因之間對應的是什么關系?根據這些關系,畫出因果圖。
由于語法或環境限制,有些原因與原因之間,原因與結果之間的組合情況不
可能出現。為表明這些特殊情況,在因果圖上用一些記號標明約束或限制條件。把因果圖轉換成判定表。
把判定表的每一列拿出來作為依據,設計測試用例。
重點復習
軟件測試技術*重點復習(帶測試案例分析題)
一、判斷題(10分)負載測試(P189):
負載測試是一個通過分析軟件應用程序和支撐架構,模擬真實環境的使用,來確定能夠接受的性能的過程。
負載測試的目標是:確定在各種工作負載下系統的性能,主要是測試當負載逐漸
增加時,系統組成部分的相應輸出項(如通過量、響應時間、CPU負載、內在的
使用等)來決定系統的性能。
判定語句:路徑:
驗收測試(P200):
驗收測試是將程序與其最初的需求及最終用戶當前的需要進行比較的過程。
驗收測試是軟件產品質量的最后一關。測試主要從用戶角度著手。
參與者主要是用戶和少量的程序開發人員。黑盒測試:
(亦功能測試、行為測試、數據驅動測試、基于規格說明的測試)
是一種從用戶觀點出發的測試。這種方法把程序當作一個黑盒,忽略其內部結構
特性。測試者只知道輸入與輸出之間的關系或程序功能,依靠程序功能需求說明
書,確定測試用例和推斷測試結果的正確性。測試用例的設計基于產品的功能、
目的是檢查程序各個功能是否實現,并檢查其中的功能錯誤。
黑盒測試所要發現的外部行為錯誤:
1)功能不正確或不完整;2)接口錯誤;
3)接口所使用的數據結構錯誤;
4)行為或性能錯誤;
5)初始化和終止錯誤;
代碼評審員:集成測試:
集成測試(是對已測試過的模塊進行組裝)就是對集成到一起的軟件組件和硬件組件進行的測試,用于評估這些組件之間能否進行正確的交互。
目的主要是:檢驗與軟件設計相關的程序結構問題、檢查各種組件之間的接口。
集成測試的完成方法:黑盒測試。
測試:
Beta測試是從用戶角度進行的測試,是由軟件的多個用戶在一個或多個用戶的
實際使用環境下進行的測試。它是在開發者無法控制的軟件環境下進行的軟件現場應用。
兩種不同的途徑:公共測試和私有測試。
二、不定項選擇題(20分)
驗收測試通過的準則:跟蹤缺陷的定義:
軟件測試工具的使用(目的是什么):
A、幫助測試尋找問題
B、協助問題的診斷C、節省測試時間
軟件測試評審會的組成人員:
測試計劃的目的:
A.使測試工作順利進行
B.使項目參與人員溝通更舒暢C.使測試工作更加系統化
測試是什么:
Alpha測試是由選定的用戶在可控的環境下進行的產品早期性測試。
在此測試中,確定并記錄要研究的功能和業務任務,但沒有可以遵循的特定測試
用例。測試內容由各測試員決定。這種驗收測試方法不像正式驗收測試那樣組織
有序,而且更為主觀。大多數情況下,非正式驗收測試是由最終用戶組織執行的。
黑盒測試具體有哪些方法:
1)邊界值分析法
2)等價類劃分法
3)因果圖法
4)決策表法
5)功能圖分析法
6)錯誤推測法
7)判定表驅動分析法
8)正交試驗設計法
9)狀態轉換測試10)分支測試
測試設計人員的職責:
1)確定并描述相應的測試技術。2)確定相應的測試支持工具
3)定義并維護測試自動化架構。
4)詳述和驗證需要的測試環境配置。
5)驗證與評估測試途徑
測試按形態怎么分類:
A.建構性測試
B.系統測試
C.專項測試
瀑布模型的階段:
A.分析
B.設計
C.編碼D.測試
軟件質量包括的內容:
1)軟件產品的質量,即滿足使用要求的程度。
2)軟件開發過程的質量,即能否滿足開發所帶來的成本、時間和風險等要求。
3)軟件在其商業環境中所表現的質量。什么叫局部數據結構測試:
局部數據結構測試:設計測試用例檢查數據類型說明、初始化、默認值等方面的問題,還要查清全程數據對模塊的影響。
軟件測試結束的標志是什么:測試的階段有哪些:
1)需求規格說明、設計、編碼階段為引入程序錯誤階段;2)測試階段為發現錯誤階段;
3)缺陷分類、缺陷分離、缺陷排除階段為清除程序錯誤階段;
導致軟件缺陷的原因:
1)技術問題
2)算法錯誤。
3)語法錯誤。4)計算和精度問題。
5)系統結構不合理,造成系統性能問題。
6)接口參數不匹配出現問題。
六大質量特性有哪些:
1)功能性
2)可靠性
3)易用性
4)效率性
5)可維護性6)可移植性
三、名詞解釋(25分/5題)
測試、測試、負載測試、壓力測試(強度測試):
測試:Alpha測試是由選定的用戶進行的產品早期性測試,這個測試一般在可控的環境下進行。
測試(P29):Beta測試是從用戶角度進行的測試,是由軟件的多個用戶在一個
或多個用戶的實際使用環境下進行的測試。它是在開發者無法控制的軟件環境下
進行的軟件現場應用。強度測試:
也稱壓力測試、負載測試。強度測試是要破壞程序,檢測非正常的情況系統的負載能力。
強度測試模擬實際情況下的軟硬件環境和用戶使用過程的系統負荷,長時間或超
負荷地運行測試軟件來測試系統,以檢驗系統能力的最高限度,從而了解系統的
可靠性、穩定性等。邏輯覆蓋、路徑覆蓋:
邏輯覆蓋:是以程序內部的邏輯結構為基礎的設計測試用例的技術。它屬于白盒測試。
路徑覆蓋:路徑覆蓋是在組件中被測試執行到的路徑的百分比。要求
設計若干測試用例,執行被測試程序時,能夠覆蓋程序中所有的可能路徑。軟件測試活動生命周期:
軟件測試活動生命周期:是指軟件從進入測試到退出測試的過程中,
所要經歷的引入程序錯誤、通過測試發現錯誤和清除程序錯誤的幾個階段。樁模塊、驅動模塊:
樁模塊(P105):用于代替所測模塊調用的子模塊。樁模塊可以進行少量的數據
操作,不需要實現子模塊的所有功能,但要根據需要來實現或代替子模塊的一部分功能。
驅動模塊(P105):相當于所測模塊的主程序。它接收測試數據,把這些數據傳送給所測模塊,最后再輸出實際測試結果。
大爆炸集成、三明治集成、改進的三明治集成、高頻集成:
大爆炸集成(P153):屬于非增值式集成的一種方法,也稱為一次性組裝或整
體拼裝。這種集成策略的做法就是把所有通過單元測試的模塊一次性集成到一起進行測試,不考慮組件之間的互相依賴性及可能存在的風險。
三明治集成(P158):一種混合增量式測試策略,綜合了自頂向下和自底向上
兩種集成方法的優點,因此也屬于基于功能分解的集成。這種方法樁和開發工作都比較小,但增加了定位缺陷的難度。
改進的三明治集成(P160):利用較高的并行度彌補三明治集成中不能充分測
試中間層的缺點。但根據中間層選擇是否恰當,可能增加驅動模塊和樁模塊設計的工作量。
高頻集成(P165):高頻集成測試是指同步于軟件開發過程,每隔一段時間對
開發團隊的現有代碼進行一次集成測試。該集成測試方法頻繁地將新代碼加入到
一個已經穩定的基線中,以免集成故障難以發現,同時控制可能出現的基線偏差。
四、簡答題(30分/6題)軟件測試和軟件測試結束的標準:
(可能考法:什么是軟件測試,軟件測試分為哪幾個階段)
軟件測試是為了發現錯誤而執行程序的過程。或者說,軟件測試是根據軟件開發
各階段的規格說明和程序的內部結構而精心設計一批測試用例女生的英語 (即輸入數據及其
預期的輸出結果),并利用這些測試用例去運行程序,以發現程序錯誤的過程。
軟件測試過程按各測試階段的先后順序可分為單元測試、集成測試、確認(有效
性)測試、系統測試和驗收(用戶)測試5個階段
軟件測試退出標準為:完成測試需求中列出的所有功能及測試過程中發現缺陷的
回歸測試。軟件缺陷等級:
1)致命的:致命的錯誤,造成系統或應用程序崩潰、死機、系統懸掛,或造成數據丟失、主要功能完全喪失等。
2)嚴重的:嚴重錯誤,指功能或特性沒有實現,主要功能部分喪失,次要功能完全喪失,或致命的錯誤聲明。
3)一般的:不太嚴重的錯誤,這樣的軟件缺陷雖然不影響系統的基本使用,但
沒有很好地實現功能,沒有達到預期效果。如次要功能喪失,提示信息不太準確,或用戶界面差,操作時間長等。
4)微小的:一些小問題,對功能幾乎沒有影響,產品及屬性仍可使用,如有個
別錯別字、文字排列不整齊等。階段評審和同行評審:
同行評審是一種重要而有效的工程方法,在軟件產品工程中調用此方法,可通過
法根式審查、結構化走查或者一些其他的學院式的評審方法加以實施。其目的是
及早和高效地去除軟件工作中的缺陷,必然結果是增強對軟件工作產品和可預防缺陷的了解。
階段評審是利用在需求分析階段所選擇并制定的標準、規范以及計劃的安排,對
軟件工程各階段的進展、完成質量及出現的問題進行正式評審,確保過程計劃并
遵守標準和規范執行,然后形成報告。當發現問題是,要準尋逐級解決的原則,
將處理結果通知相關人員,記錄解決過程及結果以作日后改進重要參考資料。兩者都是有關軟件質量管理和保證的重要內容,二者相輔相成,缺一不可。
※單元測試策略(特別注意退出的原則)和集成測試的策略(P106):
單元測試策略主要有三種方式:
1)自頂向下的單元測試策略:
2)自底向上的單元測試策略:
3)孤立測試的單元測試策略:單元測試退出的標準:
1)單元測試用例設計已經通過評審
2)核心代碼100%經過CodeReview
3)單元測試功能覆蓋率達到100%
4)單元測試代碼行覆蓋率不低于80%
5)所有發現缺陷至少60%都納入缺陷追蹤系統且各級缺陷修復率達到標準
6)不存在A、B類缺陷
7)C、D、E類缺陷允許存在
8)按照單元測試用例完成了所有規定單元的測試
9)軟件單元功能與設計一致
集成測試的策略:
1)大爆炸集成
2)自頂向下集成
3)自底向上集成
4)三明治集成
5)高頻集成6)分層集成
7)分布式集成
8)基于路徑、功能、進度、風險、事件、使用等的集成等等
恢復性測試和安全性測試:恢復性測試
也叫容錯測試,用來檢查系統的容錯能力。通常若計算機系統出現錯誤,就必須在一定時間內從錯誤中恢復過來,修正錯誤并重新啟動系統。
恢復測試是通過各種手段,讓軟件強制性地出錯,使其不能正常工作,從而檢驗系統的恢復能力。
在進行恢復性測試時,要考慮的主要問題有:
1)恢復期間的安全性過程。
2)恢復處理日志方面的能力。
3)當出現供電問題時的恢復能力。4)恢復操作后系統性能是否下降。
常用的恢復測試用例的設計方法:規范導出法、錯誤猜測法、基于故障的測試。
安全性測試就是要驗證系統內的保護機制能否抵御入侵者的攻擊。
安全性測試的測試人員需要在測試活動中,撒氣不同的入侵方式來攻擊系統的
安全機制,想盡一切辦法來獲取系統內的保密信息。通常需要模擬的活動有:
1)獲取系統密碼
2)破壞保護客戶信息的軟件
3)獨占整個系統資源,使別人無法使用
4)使得系統癱瘓,企圖在恢復系統階段獲得利益等判斷系統安全性性能的指標:
1)有效性:啟動嚴格的安全性性能所花費的時間占啟動整個系統所花費時間的比例。
2)生存性:當錯誤發生時,系統對緊急操作的支持,對錯誤的補救措施以及恢復到正常操作的能力,即系統的抗挫能力。
3)精確性:衡量系統安全性控制的精度指標,圍繞所出現的錯誤數量、發生頻率及其嚴重性判斷。
4)反應時間:出錯時系統響應速度的快慢,一個安全性較強的系統要具備快速的反應速度。
5)吞吐量:用戶和服務請求的峰值和平均值。
五、設計案例(15分/2題)
怎樣制定有效等價類、無效等價類(作業1):測試場景:
一個程序讀入3個整數,把這三個數值看作一個三角形的3條邊的長度值。這個
程序要打印出信息,說明這個三角形是不等邊的、是等腰的、還是等邊的
?設三角形的3條邊分別為A,B,C。如果它們能夠構成三角形的3條邊,必須滿足:
?A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B;
?如果是等腰的,還要判斷A=B,或B=C,或A=C;
?如果是等邊的,則需判斷是否A=B,且B=C,且A=C。
根據程序畫出程序流程圖(作業2):
程序流程圖↓
控制流圖(已經給出)
↓
圈復雜度
↓
獨立路徑
↓測試用例
制定有效等價類、無效等價類:
輸入條件有效等價類
是否構成三角形
A>0(1)
B>0(2)
C>0(3)
A+B>C(4)無效等價類
A≤0(7)
B≤0(8)
C≤0(9)A+B≤C(10)
B+C>A(5)B+C≤A(11)
C+A>B(6)C+A≤B(12)
是否構成普通三角形
A+B>C(13)A+B≤C(16)
B+C>A(14)B+C≤A(17)
C+A>B(15)是否等腰三角形
(A=B)&(A+B>C)(19)
(B=C)&(B+C>A)(20)
(C=A)&(C+A>B)(21)是否等邊三角形
(A=B)&(B=C)&(C=A)(25)A≠B(26)
獨立路徑測試法應用舉例:
程序:
1main()2{
3intnum1=0,num2=0,score=100;
4inti;5charstr;
6scanf(“%d,%cn”,&i,&str);7while(i<5)
C+A≤B(18)
A≠B(22)
B≠C(23)C≠A(24)
B≠C(27)C≠A(28)
8{
9if(str=’T’)10num1++;
11elif(str=’F’)12{
13score=score-10;
14num2++;
15}
16i++;17}
18printf(“num1=趙聯冠 %d,num2=%d,score=%dn”,num1,num2,score);19}
(一)根據程序畫出控制流圖:
控制流圖G(二)根據控制流圖計算圈復雜度:
根據程序環形復雜度的計算公式,求出程序路徑集合中的獨立路徑數目。
公式1:V(G)=10-8+2,其中10是控制流圖G中邊的數量,8是控制流圖中節點的數目。
公式2:V(G)=3+1,其中3是控制流圖G中判斷節點的數目。
公式3:V(G)=4,其中4是控制流圖G中區域的數目。
因此,控制流圖G的環形復雜度是4。就是說至少需要4條獨立路徑組成基本路
徑集合,并由此得到能夠覆蓋所有程序語句的測試用例。(三)確定基本路徑集合(即獨立路徑集合):
一條獨立路徑是至少包含有一條在其它獨立路徑中從未有過的邊的路徑。
根據上面環形復雜度的計算結果,源程序的基本路徑集合中有4條獨立路徑:path1:7->18
path2:7->9->10->16->7->18
path3:7->9->11->15->16->7->18path4:7->9->11->13->14->15->16->7->18
(四)為每一條獨立路徑各設計一組測試用例,以便強迫程序沿著該路徑至少執行一次:
測試用例輸入
i
Ca1
Ca2
Ca3
Ca4六、參考題
5
4
44
str
‘T’
‘T’
‘A’‘F’
期望輸出
Num1
0
1
00
Num2
0
0
01
Score
100
100
10090
路徑1
路徑2
路徑3
路徑4執行路徑
(一)判斷:
判定語句:對于連鎖型分支結構,若有n個判定語句,則有2n條路徑。
黑盒測試:用黑盒法測試時,測試用例是根據產品的功能設計的。(二)選擇:
軟件測試的目的是(發現軟件的錯誤)。
為了提高測試的效率,應該(選擇發現錯誤的可能性大的數據作為測試數據)。
使用白盒測試方法時,確定測試數據應根據(程序的內部邏輯)和指定的覆蓋標準。
與設計測試數據無關的文檔是(項目開發計劃)。
軟件的工作最好由(不屬于該軟件開發組的軟件設計人員)承擔,以提高集成
測試的效果。
測試真正的目的是使我們通過對軟件錯誤的原因和分布進行歸納,來發現并排除
當前軟件產品的缺陷,對在需求和設計過程中存在的問題查缺補漏,從而確保軟
件產品的質量。
常見軟件測試工程師面試題
1.你如何在pocketpc上TEST你的程序.你考慮了哪些方面.
2.如果將你的程序的語言擴展到非英語,例如中文,你如何測試.
3.給你一個COCAN,你如何測試(解釋說就是罐裝的可口可樂).
4.當你的程序遇到BUG的時候,你選擇怎樣處理.
5.你如何isolation你程序里的BUG.
6.給你一個產品有10個functionality,如果時間緊迫,只能測其中的5個,
你如何選擇.
軟件測試工程師筆試試題答案
我認為那些面試題不同的人會有不同的答案
下面是部分答案
一、判斷題(每題1分,12分,正確的√,錯誤的╳)
1.軟件測試的目的是盡可能多的找出軟件的缺陷。()軟件測試的目的就是為
了發現軟件中的缺陷,從這個意義上面說上面的這個論斷是正確的。不少人會認
為軟件測試可以保證軟件的質量,其實這個觀點是錯誤,測試只是軟件質量控制
中的一個角色,其活動并不能達成軟件質量保證的效果。所以不要認為一個公司
里面如果有了軟件測試人員,產品的質量就會好起來。
2.Beta測試是驗收測試的一種。()Beat測試和驗收測試是兩種不同的測試。
驗收測試的目的是為了以發現”未實現的需求”為目的,以評估”適合使用”為
目標,該類測試的不是以發現缺陷為主要目的。beta測試是一模擬真實的使用
環境從而發現缺陷的一種測試。所以兩者之間的是非包容關系。
3.驗收測試是由最終用戶來實施的。()上面說到了驗收測試的目的和目標,
所以驗收測試也可是是軟件生產的企業內部人員來實施。例如產品經理。當軟件
以項目的形式出現,那么驗收測試由最終用戶來實施的情況是比較長見的。但是
對于產品形式的軟件,生產企業內部的驗收測試會更多。
4.項目立項前測試人員不需要提交任何工件。()應該說這道題目沒有明確的
答案,在項目立項前測試人員是不是要把一些準備工作以工件的形式給記錄下來
是完全取決于該企業的軟件開發過程的要求。同時不同企業,立項前要達成的一
些必要條件也是大相徑庭的。應該說這一題目出的不是很好,如果你是出題人這
家企業的測試工程師,那么就應該有一個明確的答案。
5.單元測試能發現約80%的軟件缺陷。()同樣這一題目也沒有標準答案。因
為該數據的來源和其統計的方法,樣本都沒有一個工業標準。這樣出來的數據同
樣不具有權威性。這里我可以說一個簡單的例子,在用ASP,php這類腳本語言開
發網頁的時候是根本沒有復雜的單元測試。那么這樣的數字應用在網站開發上面
是否有意義,還是值得商榷的。所以這道題目出的不好,沒有明確的答案
6.代碼評審是檢查源代碼是否達到模塊設計的要求。()代碼審查是一種靜態
技術,從這個意義上說代碼復查是需要和其他的一些動態測試技術配合才能檢查
代碼是否符合設計的要求
7.自底向上集成需要測試員編寫驅動程序。()這道題目大家看下top-down和
down-top的集成測試示意圖就能得出明確的答案。這里需要了解的是什么是驅
動測試程序,什么是樁程序。如果集成組件數量眾多,多關系層次,那么不論是
什么類型的集成測試。驅動程序和樁程序都是需要開發的。
8.負載測試是驗證要檢驗的系統的能力最高能達到什么程度。()關于負載測
試和壓力測試在論壇中的帖子中有詳細的解釋,大家可以去看一下就能得出正確
的答案
9.測試人員要堅持原則,缺陷未修復完堅決不予通過。()同樣,這一題沒有
正確的答案。缺陷是否修復是需要聽取測試人員的意見,但測試人員的意見非決
定性。所以還是要看一個企業賦予測試人員有多大的權力。
10.代碼評審員一般由測試員擔任。()如果測試員有這個水平,那么當然是可
以參加的。不過大多數的企業不會讓普通的測試人員參與代碼的評審。
11.我們可以人為的使得軟件不存在配置問題。()首先大家先搞清楚什么是配
置管理什么是軟件配置,從這道題目中看不出出題人想問的是關鍵工程中的配置
管理還是單純的軟件配置。但是可以肯定的是不論是何種情況,答案均是否定的。
12.集成測試計劃在需求分析階段末提交。()集成測試計劃在開發人員完成軟
件集成計劃之后就可以開始進行了。所以在需求分析階段之后提交是不現實的事
情,應該在軟件的設計階段后,編碼前。
二、不定項選擇題(每題2分,10分)1.軟件驗收測試的合格通過準則是:()
A.軟件需求分析說明書中定義的所有功能已全部實現,性能指標全部達到要求。B.所有測試項沒有殘余一級、二級和一
C.立項審批表、需求分析文檔、設計文檔和編碼實現一致。
D.驗收測試工件齊全。回答這道題,你必須是這家企業的員工。前面說到了驗
收測試的目的和目標,一個是需求必須實現,二是證明軟件是適合使用的。這樣
能滿足這兩個通用標準就可以了。當然有些軟件企業會對驗收測試標準做一些調
整。
2.軟件測試計劃評審會需要哪些人員參加?()
A.項目經理
B.SQA負責人C.配置負責人
D.測試組上面的4種角色都需要參與
3.下列關于alpha測試的描述中正確的是:()
A.alpha測試需要用戶代表參加
B.alpha測試不需要用戶代表參加C.alpha測試是系統測試的一種
D.alpha測試是驗收測試的一種首先大家需要知道alpha測試是系統級別的測
試,該測試是在一個受控的環境中進行的。用戶需要直接參與進來。所以答案應
該是AD
轉貼請注明:志遠工作室
4.測試設計員的職責有:()
A.制定測試計劃
B.設計測試用例C.設計測試過程、腳本
D.評估測試活動合理的答案的是BC,同時要看軟件企業對該類人員的職責是
如何定義。
5.軟件實施活動的進入準則是:()
A.需求工件已經被基線化
B.詳細設計工件已經被基線化C.構架工件已經被基線化
D.項目階段成果已經被基線化先要了解一下什么是基線。這個是軟件配置管理
中一個重要的概念。工作產品必須納入到一定的基線里面。所以選擇ABC是必定
的,至于是否選擇D要看這家企業自身的標準了
填空題(每空1分,24分)
1.軟件驗收測試包括___、___、____三種類型。軟件驗收測試包括正式驗收測
試、alpha測試、beta測試三種測試。
2.系統測試的策略有功能測試、、、、易用性測試、、、、、、、、、、等
15種方法。系統測試的策略有很多種的,我知道的有性能測試、負載測試、
強度測試、易用性測試、安全測試、配置測試、安裝測試、文檔測試、故障恢復
測試、用戶界面測試、恢復測試、分布測試、可用性測試。。。
3.設計系統測試計劃需要參考的項目文檔有、和迭代計劃。設計系統測試計劃
需要參考的項目文檔有軟件測試計劃、軟件需求工件、和迭代計劃。
4.對面向過程的系統采用的集成策略有___、___兩種。5.通過畫因果圖來寫
測試用例的步驟為___、___、___、___及把因果圖轉換為狀態圖共五個步驟。利
用因果圖生成測試用例的基本步驟是:分析軟件規格說明描述中,哪些是原
因(即輸入條件或輸入條件的等價類),哪些是結果(即輸出條件),并給每個
原因和結果賦予一個標識符。分析軟件規格說明描述中的語義,找出原因與
結果之間,原因與原因之間對應的是什么關系?根據這些關系,畫出因果圖。
由于語法或環境限制,有些原因與原因之間,原因與結果之間的組合情況不可能
出現。為表明這些特殊情況,在因果圖上用一些記號標明約束或限制條件。把
因果圖轉換成判定表。把判定表的每一列拿出來作為依據,設計測試用例。
常見的軟件測試面試題
常見的測試用例設計方法都有哪些?請分別以具體的例子來說明這些方法在測
試用例設計工作中的應用。
1.等價類劃分
常見的軟件測試面試題劃分等價類:等價類是指某個輸入域的子集合.在該
子集合中,各個輸入數據對于揭露程序中的錯誤都是等效的.并合理地假定:測試
某等價類的代表值就等于對這一類其它值的測試.因此,可以把全部輸入數據合
理劃分為若干等價類,在每一個等價類中取一個數據作為測試的輸入條件,就可
以用少量代表性的測試數據.取得較好的測試結果.等價類劃分可有兩種不同的
情況:有效等價類和無效等價類.
2.邊界值分析法
邊界值分析方法是對等價類劃分方法的補充。測試工作經驗告訴我,大量的
錯誤是發生在輸入或輸出范圍的邊界上,而不是發生在輸入輸出范圍的內部.因
此針對各種邊界情況設計測試用例,可以查出更多的錯誤.
使用邊界值分析方法設計測試用例,首先應確定邊界情況.通常輸入和輸出
等價類的邊界,就是應著重測試的邊界情況.應當選取正好等于,剛剛大于或剛剛
小于邊界的值作為測試數據,而不是選取等價類中的典型值或任意值作為測試數
據.
3.錯誤推測法
基于經驗和直覺推測程序中所有可能存在的各種錯誤,從而有針對性的設
計測試用例的方法.
錯誤推測方法的基本思想:列舉出程序中所有可能有的錯誤和容易發生錯
誤的特殊情況,根據他們選擇測試用例.例如,在單元測試時曾列出的許多在模
塊中常見的錯誤.以前產品測試中曾經發現的錯誤等,這些就是經驗的總結。還
有,輸入數據和輸出數據為0的情況。輸入表格為空格或輸入表格只有一行.這
些都是容易發生錯誤的情況。可選擇這些情況下的例子作為測試用例.
4.因果圖方法
前面介紹的等價類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但
未考慮輸入條件之間的聯系,相互組合等.考慮輸入條件之間的相互組合,可能
會產生一些新的情況.但要檢查輸入條件的組合不是一件容易的事情,即使把
所有輸入條件劃分成等價類,他們之間的組合情況也相當多.因此必須考慮采用
一種適合于描述對于多種條件的組合,相應產生多個動作的形式來考慮設計測試
用例.這就需要利用因果圖(邏輯模型).因果圖方法最終生成的就是判定表.
它適合于檢查程序輸入條件的各種組合情況.
5.正交表分析法
有時候,可能因為大量的參數的組合而引起測試用例數量上的激增,同時,
這些測試用例并沒有明顯的優先級上的差距,而測試人員又無法完成這么多數量
的測試,就可以通過正交表來進行縮減一些用例,從而達到盡量少的用例覆蓋盡
量大的范圍的可能性。
6.場景分析方法
指根據用戶場景來模擬用戶的操作步驟,這個比較類似因果圖,但是可能執
行的深度和可行性更好。
您認為做好測試用例設計工作的關鍵是什么?
白盒測試用例設計的關鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結
果
黑盒法用例設計的關鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不
可能做到完全測試,以最少的用例在合理的時間內發現最多的問題
詳細的描述一個測試活動完整的過程。
1.項目經理通過和客戶的交流,完成需求文檔,由開發人員和測試人員共
同完成需求文檔的評審,評審的內容包括:需求描述不清楚的地方和可能有明顯
沖突或者無法實現的功能的地方。項目經理通過綜合開發人員,測試人員以及客
戶的意見,完成項目計劃。然后SQA進入項目,開始進行統計和跟蹤
2.開發人員根據需求文檔完成需求分析文檔,測試人員進行評審,評審的
主要內容包括是否有遺漏或者雙方理解不同的地方。測試人員完成測試計劃文
檔,測試計劃包括的內容上面有描述。
3.測試人員根據修改好的需求分析文檔開始寫測試用例,同時開發人員完
成概要設計文檔,詳細設計文檔。此兩份文檔成為測試人員撰寫測試用例的補充
材料。
4.測試用例完成后,測試和開發需要進行評審。
5.測試人員搭建環境
6.開發人員提交第一個版本,可能存在未完成功能,需要說明。測試人員
進行測試,發現BUG后提交給BugZilla。
7.開發提交第二個版本,包括BugFix以及增加了部分功能,測試人員進
行測試。
8.重復上面的工作,一般是3-4個版本后BUG數量減少,達到出貨的要求。
9.如果有客戶反饋的問題,需要測試人員協助重現以及回歸測試。
以往是否曾經從事過性能測試工作?請盡可能的詳細描述您以往的性能測
試工作的完整過程。
曾經做過一套網管系統的性能測試,主要測試該軟件在同時管理大量終端的
情況下,在響應時間,CPU/磁盤/內存等參數是否滿足要求。
也曾經做過軟交換系統的呼叫性能測試,主要是測試軟交換系統在有大量呼
叫的情況下,響應時間,呼叫成功率,CPU/磁盤/內存等參數是否滿足設計要求。
您在從事性能測試工作時,是否使用過一些測試工具?如果有,請試述該工具的
工作原理,并以一個具體的工作中的例子描述該工具是如何在實際工作中應用
的。
測試網管系統中,使用的Mimic來模擬終端,能夠大量的節省成本。
測試軟交換系統的時候,使用的Prolab來模擬終端并發送呼叫軟交換,他
完成了同時數百人才能完成的摘機撥號工作,主要工作原理是產生一些符合要求
的IP包并發送給軟交換系統,同時對軟交換系統的回應進行處理,決定下一步
動作。
您認為性能測試工作的目的是什么?做好性能測試工作的關鍵是什么?
主要是保障在大量用戶的情況下,服務能正常使用。
在您以往的工作中,一條軟件缺陷(或者叫Bug)記錄都包含了哪些內容?如何
提交高質量的軟件缺陷(Bug)記錄?
1.在傳統的BugZilla中,BUG描述應該包括以下的信息
2.和BUG產生對應的軟件版本
3.開發的接口人員
的優先級
的嚴重程度
可能屬于的模塊,如果不能確認,可以用開發人員來判斷
標題,需要清晰的描述現象
描述,需要盡量給出重新Bug的步驟
附件中能給出相關的日志和截圖。
高質量的BUG記錄就是指很容易理解的BUG記錄,所以,對于描述的要求高,
能提供的信息多且準確,很好的幫助開發人員定位。
對軟件測試工程師面試題目的回答
01.為什么要在一個團隊中開展軟件測試工作?保證軟件質量的最后一道關口。
02.您是否了解以往所工作的企業的軟件測試過程?如果了解,請試述在這個過程中都有哪些工作要做?分別由哪些不同的角色來完成這些工作?
測試計劃->測試設計(測試用例,測試數據)->測試執行(單元測試,集成測試,系統測試,回歸測試)
03.您所熟悉的軟件測試類型都有哪些?請試著分別比較這些不同的測試類型
的區別與聯系(如功能測試、性能測試……)易用性測試-界面的友好性,操作方便性等。
功能測試-系統中功能性需求的滿足
安全性測試-系統是否存在安全隱患和漏洞性能測試-系統在大并發下的響應速度和健壯性
04.請試著比較一下黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系。
黑盒/白盒:主要區別在是否了解系統或程序的內部結構和代碼
單元測試:關注某一個單元,函數,模塊的正確性,一般需要編寫相關測試代碼。
集成測試:模塊或模塊直接的集成接口測試,單個模塊測試系統測試:一個完整功能的完全測試。
05.測試計劃工作的目的是什么?測試計劃工作的內容都包括什么?其中哪些是最重要的?
提前安排出測試工具選擇,測試類型選擇,人員需求,保證和項目開發協調一致,保證測試工作順利進行。
06.您認為做好測試計劃工作的關鍵是什么?了解項目或系統的業務需求
和項目經理協調好,了解項目的進度計劃安排情況
07.您所熟悉的測試用例設計方法都有哪些?請分別以具體的例子來說明這些方法在測試用例設計工作中的應用。
邊界值/等價類/業務流程圖分析和狀態轉換分析/業務邏輯分析08.您認為做好測試用例設計工作的關鍵是什么?
對業務和軟件需求非常清楚,可以根據需求不同選擇不同的測試用例設計
09.您以往的工作中是否曾開展過測試用例的評審工作?如果有,請描述測試用
例評審的過程和評審的內容。評審計劃->預審->評審;
評審內容主要是測試用例對軟件需求的覆蓋程度,對于相關邊界是否考慮,是否針對復雜流程準備多套測試數據,是否有專門針對非功能性需求的測試。
10.您以往是否曾經從事過性能測試工作?如果有,請盡可能的詳細描述您以往的性能測試工作的完整過程。
制訂計劃->選擇測試功能->選擇測試工具->錄制腳本->運行測試->分析結果
11.您在從事性能測試工作時,是否使用過一些測試工具?如果有,請試述該工
具的工作原理,并以一個具體的工作中的例子描述該工具是如何在實際工作中應用的。
微軟WAS,LoadRunner
12.您認為性能測試工作的目的是什么?做好性能測試工作的關鍵是什么?關鍵是測試腳本的錄制,測試時候測試環境的干凈。
13.在您以往的工作中,一條軟件缺陷(或者叫Bug)記錄都包含了哪些內容?如何提交高質量的軟件缺陷(Bug)記錄?
缺陷名詞/描述/缺陷等級/嚴重程度/發現模塊/發現步驟和過程/是否可以重現
14.您以往所從事的軟件測試工作中,是否使用了一些工具來進行軟件缺陷(Bug)
的管理?如果有,請結合該工具描述軟件缺陷(Bug)跟蹤管理的流程。
CQ,也可以使用BugFree等免費工具。
15.您如何看待軟件過程改進?在您曾經工作過的企業中,是否有一些需要改進的東西呢?您期望的理想的測試人員的工作環境是怎樣的?
將先進的經驗或思想固化到過程中,通過過程改進和能力提高來改進軟件質量。
軟件測試:微軟測試工程師面試題
1.你如何在pocketpc上TEST你的程序.你考慮了哪些方面.
2.如果將你的程序的語言擴展到非英語,例如中文,你如何測試.
3.給你一個COCAN,你如何測試(解釋說就是罐裝的可口可樂).
4.當你的程序遇到BUG的時候,你選擇怎樣處理.
5.你如何isolation你程序里的BUG.
6.給你一個產品有10個functionality,如果時間緊迫,只能測其中的5
個,你如何選擇.
其它相關:
如果別人問我這些題目,我想我會大致這樣回答,各位從事軟件測試的們幫我看看回答的怎么樣。
01.為什么要在一個團隊中開展軟件測試工作?
答:軟件測試在整個一個團隊中占有非常重要的地位,具體來說就是測試是
一個發現軟件錯誤的過程,執行軟件測試會以最少的人力和時間,系統的找到軟件存在的缺陷和錯誤,建立起開發人員和使用者對軟件的信心。
02.您是否了解以往所工作的企業的軟件測試過程?如果了解,請試述在這
個過程中都有哪些工作要做?分別由哪些不同的角色來完成這些工作?
答:軟件測試部門配合系統分析人員軟件需求分析討論,并根據需求說明書制定《項目測試計劃》,編寫測試用例,建立測試環境。
軟件測試人員負責軟件開發部門的新產品測試及原有產品的升級測試,負責
軟件問題解決過程跟蹤,負責軟件開發文檔開發工作的規范化及管理開發部門的
產品文檔,制作用戶手冊及操作手冊,負責產品的上線測試,監督軟件開發過程的執行,提高產品質量。
03.您是否了解以往所工作的企業的軟件開發過程?如果了解,請試述一個
完整的開發過程需要完成哪些工作?分別由哪些不同的角色來完成這些工作?(對于軟件測試部分,可以簡述)
答:需求人員連同系統分析人員&測試人員開會討論需求。系統分析人員寫
出需求分析說明,并連同系統分析人員&測試人員&需求人員開會討論可行性。系
統分析人員寫出詳細設計說明書,程式人員編碼,給出系統流程圖。交與測試人
員,測試人員給出Bug統計表。
04.您在以往的測試工作中都曾經具體從事過哪些工作?其中最擅長個人信息表 哪部分工作?
答:從事過writetestplan,creationoftestca,進行功能測試,
性能測試,編寫測試工具,文檔的管理等,比較擅長與寫測試用例和進行功能測試。
05.您所熟悉的軟件測試類型都有哪些?請試著分別比較這些不同的測試類型的區別與聯系(如功能測試、性能測試……)
答:有功能測試,性能測試,可靠性測試,安全性測試,負載測試,壓力測
試,安裝/卸載測試,啟動/停止測試,兼容性測試,互連測試,文檔測試,恢復測試,回歸測試,可使用性測試,容量測試。
功能測試只對軟件的功能是否滿足用戶需求來做測試。性能測試需要和壓力和負載測試聯合起來。
06.請試著比較一下黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系。
黑盒測試:把測試對象當成一個黑盒子,測試人員完全不考慮邏輯結構和內
部特性,只依據程式的需求說明書來檢查程式的功能是否滿足它的功能說明。
白盒測試:把測試對象當成一個透明的盒子,允許測試人員利用程序內部邏
輯結構及相關信息,設計或選擇測試用例,對程式所有邏輯路徑進行測試。
單元測試:白盒測試的一種,對軟件設計中的單元模塊進行測試。
集成測試:在單元測試的基礎上,對單元模塊之間的連接和組裝進行測試。
系統測試:在所有都考慮的情況下,對系統進行測試。
驗收測試:第三方進行的確認軟件滿足需求的測試。
●在計算機系統中,存取速度最快的是___(1)___。
(1)A.CPU內部寄存器B.計算機的高速緩存Cache
C.計算機的主存D.大容量磁盤
●模塊的耦合度描述了___(2)___。
(2)A.模塊內各種元素結合的程度B.模塊內多個功能之間的接口
C.模塊之間公共數據的數量D.模塊之間相互關聯的程度
●若某計算機系統是由500個元器件構成的串聯系統,且每個元器件的失效率均為,在不考慮其它因素對可靠性的影響時,該計算機系統的平均故障間隔
時間為___(3)___小時。
(3)A.B.C.D.
●內聚是一種指標,表示一個模塊___(4)___。
(4)A.代碼優化的程度B.代碼功能的集中程度
C.完成任務時及時程度D.為了與其他模塊連接所要完
成的工作量
●為了解決進程間的同步和互斥問題,通常來用一種稱為___(5)___機制的
方法。若系統中有5個進程共享若干個資源R,每個進程都需要4個資源R,那
么使系統不發生死鎖的資源R的最少數目是___(6)___。
(5)A.調度B.信號量C.分派D.通訊
(6)A.20B.18C.16D.15
●在UNIX操作系統中,把輸入/輸出設備看作是___(7)___。
(7)A.普通文件B.目錄文件C.索引文件D.特殊文件
●某磁盤盤組共有10個盤面,每個盤面上有100個磁道,每個磁道有16個扇區,假定分配以扇區為單位。若使用位示圖管理磁盤空間,則位示圖需要占
用___(8)___字節空間。
(8)A.16000B.1000C.2000D.1600
●___(9)___描述數據的局部邏輯視圖,是數據庫用戶的數據視圖,它是與
某一應用有關的數據邏輯表示。
(9)A.模式B.邏輯模式C.外模式D.內模式
●某數據庫中有員工關系E、產品關系P、倉庫關系W和庫存關系I,其中:
員工關系E(employeelD,name,department)中的屬性為:員工編號,姓
名,部門;
產品關系P(productID,name,model,size,color)中的屬性為:產品編號,
產品名稱,型號,尺寸,顏色;
倉庫關系W(warehoulD,name,address,employeeID)中的屬性為:倉
庫編號,倉庫名稱,地址,員工編號;
庫存關系I(warehouID,productID,quantity)中的屬性為倉庫編號,產品
編號和產品數量。
a.若要求倉庫關系的負責人引用員工關系的員工編號,員工關系E的員工
編號、倉庫關系W的倉庫編號和產品關系P的產品編號不能為空且惟一標識一
個記錄,并且倉庫的地址不能為空,則依次要滿足的完整性約束是___(10)___。
b.可得到每種產品偽名稱和該產品的總庫存量的查詢語句為;
SELELCTname,SUM(quantity)
FROMP,I
WHERE___(11)___
(10)A.實體完整性、參照完整性、用戶定義完整性
B.參照完整性、實體完整性、用戶定義完整性
C.用戶定義完整性、實體完整性、參照完整性
D.實體完整性、用戶定義完整性、參照完整性
(11)A.tID=tlD;
B.tID=tIDORDERBYname;
C.tID=I.productIDGROUPBYname;
D.tID=I.productIDGROUPBYname,quantity。
●與多模光纖相比較,單模光纖具有___(12)___等特點。
(12)A.較高的傳輸率、較長的傳輸距離、較高的成本
B.較低的傳輸率、較短的傳輸距離、較高的成本
C.較高的傳輸率、較短的傳輸距離、較低的成本
D.較低的傳輸率、較長的傳輸距離、較低的成本
●“
記的屬性值是___(13)___。
(13)A.titleB.styleC.italicD.science
●某校園網用戶無法訪問外部站點210.102.58.74,管理人員在windows操
作系統下可以使用___(14)___判斷故障發生在校園網內還是校園網外。
(14)t210.102.58.74
210.102.58.74
●SNMP所采用的傳輸層協議是___(15)___。
(15)
●漸增式開發方法有利于___(16)___。
(16)A.獲取軟件需求B.快速開發軟件C.大型團隊開發D.商業
軟件開發
●高級程序設計語言中用于描述程序中的運算步驟、控制結構及數據傳輸的
是___(17)___。
(17)A.語句B.語義C.語用D.語法
●___(18)___是面向對象程序設計語言不同于其它語言的主要特點,是否建
立了豐富的___(19)___是衡量一個面向對象程序設計語言成熟與否的重要標志
之一。
(18)A.繼承性B.消息傳遞C.多態性D.靜態聯
編
(19)A.函數庫B.類庫C.類型庫D.方法庫
●某市標準化行政主管部門制定并發布的工業產品的安全、衛生要求的標
準,在其行政區域內是___(20)___。
(20)A.強制性標準B.推薦性標準C.自愿性標準D.指導性
標準
●王某購買了一個“海之久”牌活動硬盤,而且該活動硬盤還包含有一項實用
新型專利,那么,王某享有___21___。
(21)A.“海之久”商標專用權B.該盤的所有權
C.該盤的實用新型專利權D.前三項權利之全部
●甲企業委托軟件公司程序員王某開發管理軟件,并與王某簽訂了書面協
議,但協議中未對軟件著作權歸屬做出明確的約定,其軟件著作權屬于
___(22)___。
(22)A.甲企業B.軟件公司C.程序員王某D.軟件
公司和甲企業
●依據著作權法,計算機軟件著作權保護的對象是指___(23)___。
(23)A.計算機硬件B.計算機軟件C.計算機硬件和軟件D.計
算機文檔
●相對于DES算法而言,RSA算法的___(24)___,因此,RSA___(25)___。
(24)A.加密密鑰和解密密鑰是不相同的B.加密密鑰和解密密鑰是相
同的
C.加密速度比DES要高D.解密速度比DES要高
(25)A.更適用于對文件加密B.保密性不如DES
C.可用于對不同長度的消息生成消息摘要D.可以用于數字簽名
●在C++語言中,已知3個類O、P和Q,類O中定義了一個私有方法F1、
一個公有方法F2和一個受保護的方法F3:類P和類Q是類O的派生類,其繼
承方式如下所示:
classP:protectedO{…};
classQ:publicO{…};
關于方法F1的描述中正確的是___(26)___;關于方法F2韻描述中正確的
是___(27)___;關于方法F3的描述中正確的是___(28)___。
(26)A.方法F1無法被訪問B.只有在類O內才能訪
問方法F1
C.只有在類P內才能訪問方法F1D.只有在類Q內才能
訪問方法F1
(27)A.類O、P和Q的對象都可以訪問方法F2B.類P和Q的對象
都可以訪問方法F2
C.類0和Q的對象都可以訪問方法F2D.只有在類P內才能
訪問方法F2
(28)A.類0、P和Q的對象都可以訪問方法F3B.類0、P和Q的對
象都不可以訪問方法F3
C.類0和Q的對象都可以訪問方法F3D.類P和Q的對象
都可以訪問方法F3。
●正式的技術評審FTR(FormalTechnicalReview)是軟件工程師組織的軟
件質量保證活動,下面關于FTR指導原則中不正確的是___(29)___。
(29)A.評審產品,而不是評審生產者的能力
B.要有嚴格的評審計劃,并遵守日程安排
C.對評審中出現的問題要充分討論,以求徹底解決
D.限制參與者人數,并要求評審會之前做好準備
●在繪制數據流圖時,要遵循的一個原則是父圖與子圖的平衡,所謂平衡是
指___(30)___。
(30)A.父圖和子圖都不得改變數據流的性質
B.子圖不改變父圖數據流的—致性
C.父圖的輸入/輸出數據流與子圖的輸入/輸出數據流一致
D.子圖的輸出數據流完全由父圖的輸入數據流確定
●某系統的頂層DFD圖如下,其中,加工1細化后的DFD圖是___(31)___。
●下圖中的程序由A、B、C、D、E5個模塊組成,下表中描述了這些模塊
之間的接口,每一個接口有一個編號。此外,模塊A、D和E都要引用一個專用
數據區。那么A和E之間耦合關系是___(32)___。
(32)A.公共耦合B.數據耦合C.內容耦合D.
無耦合
●在C++語言中,若類C中定義了一個方法intf(int五年級下冊美術 a,intb),那么方法
___(33)___不能與該方法同時存在于類C中。
(33)A.intf(intx,inty)B.intf(floata,intb)
C.floatf(intx,floaty)D.intf(intx,floaty)
●在面向對象軟件開發過程中,采用設計模式___(34)___。
(34)A.允許在非面向對象程序設計語言中使用面向對象的概念
B.以復用成功的設計和體系結構
C.以減少設計過程創建的類的個數
D.以保證程序的運行速度達到最優值
●兩個小組獨立地測試同一個程序,第一組發現25個錯誤,第二組發現30
個錯誤,在兩個小組發現的錯誤中有15個是共同的,那么可以估計程序中的錯
誤總數是___(35)___個。
(35)A.25B.30C.50D.60
●對于軟件的測試,下列描述正確的是___(36)___。
(36)A.測試就是在軟件公司內部展開的測試,由公司專業的測試人員執
行的測試
B.測試就是在軟件公司內部展開的測試,由公司的非專業測試人員
執行的測試
C.測試就是在軟件公司外部展開的測試,由專業的測試人員執行的
測試
D.測試就是在軟件公司外部展開的測試,可以由非專業的測試人員
執行的測試
●___(37)___可以作為軟件測試結束的標志。
(37)A.使用了特定的測試用例B.錯誤強度曲線下降到預定
的水平
C.查出了預定數目的錯誤D.按照測試計劃中所規定的
時間進行了測試
●下面①--④是關于軟件評測師工作原則的描述,正確的判斷是
___(38)___。
①對于開發人員提交的程序必須進行完全的測試,以確保程序的質量
②必須合理安排測試任務,做好周密的測試計劃,平均分配軟件各個模塊
的測試時間
③在測試之前需要與開發人員進行詳細的交流,明確開發人員的程序設計思路,并以此為依據開展軟件測試工作,最大程度地發現程序中與其設計思路不
一致的錯誤
④要對自己發現的問題負責,確保每一個問題都能被開發人員理解和修
改。
(38)A.①、②B.②、③C.①、③D.無
●在軟件生命周期的不同階段,需要實施不同類型的測試工作,單元測試是
對程序設計進行驗證,其中___(39)___不是單元測試的主要內容。在進行單元
測試過程中,通常測試工程師都需要借助___(40)___來代替所測模塊調用的子模塊:在單元測試的基礎上,需要將所有模塊按照概要設計和詳細設計說明書的
要求進行組裝,模塊組裝成系統的方式有兩種,分別是___(41)___。
(39)A.模塊接口測試B.有效性測試C.路徑測試D.邊
界測試
(40)A.樁模塊B.驅動模塊C.樁模塊和驅動模塊D.
存根模塊和驅動模塊
(41)A.一次性組裝和增殖性組裝B.自頂向下組裝和啟底向上
組裝
C.單個模塊組裝和混合模塊組裝D.接口組裝和功能組裝
●黑盒測試是通過軟件的外部表現來發現軟件缺陷和錯誤的測試方法,具體
地說,黑盒測試用例設計技術包括___(42)___等。現有一個處理單價為1元的
盒裝飲料的自動售貨機軟件,若投入1元幣,按下“可樂”、“雪碧”或“紅茶”按鈕,
相應的飲料就送出來,若投入的是2元幣,在送出飲料的同時退還1元幣。下
表是用因果圖法設計的部分測試用例,l表示執行該動作,0表示不執行該動作,
___(43)___的各位數據,從左到右分別填入空格表中的(1)—(8)是正確的。
(42)A.等價類劃分法、因果圖法、邊界值分析法、錯誤推測法、判定表驅
動法
B.等價類劃分法、因果圖法、邊界值分析法、正交試驗法、符號法
C.等價類劃分法、因果圖法、邊界值分析法、功能圖法、基本路徑法
D.等價類劃分法、因果圖法、邊界值分析法、靜態質量度量法、場景
法
(43)A.01001100B.01101100C.01001010D.
11001100
●多條件覆蓋是一種邏輯覆蓋,它的含義是設計足夠的測試用例,使得每個
判定中條件的各種可能組合都至少出現一次,滿足多條件覆蓋級別的測試用例也
是滿足___(44)___級別的:針對布爾表達式
A&&(B||C)執行邏輯覆蓋測試,測試用例至少需要___(45)___種組合才能滿足
多條件覆蓋的要求。
(44)A.語句覆蓋、判定覆蓋、條件覆蓋、條件判定組合覆蓋
B.判定覆蓋、條件覆蓋;條件判定組合覆蓋、修正條件判定覆蓋
C.語句覆蓋、判定覆蓋、條件判定組合覆蓋、修正條件判定覆蓋
D.路徑覆蓋、判定覆蓋、條件覆蓋、條件判定組合覆蓋
(45)A.6B.4C.8D.12
●典型的軟件測試過程模型有___(46)___等,在這些模型中,___(47)___
強調了測試計劃等工作的先行和對系統需求和系統設計的測試,___(48)___對
軟件測試流程予以了說明。
(46)A.V模型、W模型、H模型、漸進模型
B.V模型、W模型、H模型、螺旋模型
C.X模型、W模型、H模型、前置測試模型
D.X模型、W模型、H模型、增量模型
(47)A.V模型B.W模型C.漸進模型D.螺
旋模型
(48)A.V模型B.W模型C.H模型D.增
量模型
●下述關于錯誤處理流程管理的原則,___(49)___的說法是不正確的。
(49)A.為了保證正確地定位錯誤,需要有豐富測試經驗的測試人員驗證發
現的錯誤是否是真正的錯誤,并且驗證錯誤是否可以再現。
B.每次對錯誤的處理都要保留處理信息,包括處理人姓名、處理時間、
處理方法、處理意見以及錯誤狀態
C.錯誤修復后必須由報告錯誤的測試人員確認錯誤已經修復,才能關
閉錯誤
D.對于無法再現的錯誤,應該由項目經理,測試經理和設計經理共同
討論決定拒絕或者延期。
●GB/T16260—2003《軟件工程產品質量》規定的軟件產品使用質量特性
包括___(50)___。
(50)A.適應性、生產率、可靠性、滿意度
B.有效性、生產率、安全性、滿意度
C.有效性、可靠性、適應性、滿意度
D.適應性、適用性、效率、滿意度
●軟件可靠性是指在指定的條件下使用時,軟件產品維持規定的性能級別的
能力,其子特性___(51)___是指在軟件發生故障或者違反指定接口的情況下,
軟件產品維持規定的性能級別的能力。
(51)A.成熟性B.易恢復性C.容錯性D.
可靠性依從性
●GB/T18905—2002《軟件工程產品評價》中確定的通用評價過程包括四
個方面,即:確立評價需求,規定評價,設計評價和執行評價,其中有關“規定
評價”部分包含的內容有___(52)___。
(52)A.選擇度量、建立度量評定等級、確立評估準則:
B.指定質量模型、選擇度量、建立度量評定等級
C.選擇度量、建立度量評定等級、制定評價計劃
D.確定產品類型、選擇度量、建立度量評定等級
●GB/T18905-2002《軟件工程產品評價》提供了軟件產品評價的過程,其
中GB/T18905—2002《軟件工程產品評價》第五部分評價者用的過程供
___(53)___。
(53)A.計劃獲取或復用某個已有的軟件產品的組織予以使用
B.對軟件產品執行獨立評估的評價者使用
C.計劃開發新產品或增強現有的產品,以及打算利用他們自己的技術
人員進行產品評價的組織使用
D.編制評價模塊的文檔提供指南
●用邊界值分析法,假定1
___(54)___。
(54)A.X=1,X=100B.X=0,X=1,X=100,X=101C.X=2,
X=99D.X=O,X=101
●導致軟件缺陷的原因有很多,①—④是可能的原因,其中最主要的原因包
括___(55)___。
①軟件需求說明書編寫的不全面,不完整,不準確,而且經常更改
②軟件設計說明書
③軟件操作人員的水平
④開發人員不能很好的理解需求說明書和溝通不足
(55)A.①、②、③B.①、③C.②、③D.①、
④
●關于軟件質量的描述,正確的是___(56)___。
(56)A.軟件質量是指軟件滿足規定用戶需求的能力
B.軟件質量特性是指軟件的功能性、可靠性、易用性、效率、可維護
性、可移植性
C.軟件質量保證過程就是軟件測試過程
D.以上描述都不對
●對于業務流清晰的系統可以利用___(57)___貫穿整個測試用例設計過程
廣在用例中綜合使用各種測試方法,對于參數配置類的軟件,要用___(58)___
選擇較少的組合方式達到最佳效果,如果程序的功能說明中含有輸入條件的組合
情況,則一開始就可以選用___(59)___和判定表驅動法。
(57)A.等價類劃分B.因果圖法C.正交試驗法D.
場景法
(58)A.等價類劃分B.因果圖法C.正交試驗法D.
場景法
(59)A.等價類劃分B.因果圖法C.正交試驗法D.
場景法
●邏輯路徑覆蓋法是白盒測試用例的重要設計方法,其中語句覆蓋法是較為
常用的方法,針對下面的語句段,采用語句覆蓋法完成測試用例設計,測試用例
見下表,對表中的空缺項(True或者Fal),正確的選擇是___(60)___。
語句段:
if(A&&(B||C))x=l;
elx=O;
用例表:
(60)A.①TRUE②FALSE③TRUEB.①TRUE②FALSE
③FALSE
C.①FALSE②FALSE③TRUED.①TRUE②TRUE
③FALSE
●___(61)___方法根據輸出對輸入的依賴關系設計測試用例。
(61)A.路徑測試B.等價類C.因果圖D.邊界
值
●針對下面程序段,邊界值問題可以定位在___(62)___。
1:RemCreatea10elementintegerarray
2:Remlnitializeeachelementto-1
3:Dimdata(10)AsInteger
4:DimiAsInteger
5:Fori=1TO10
6:data(i)=-1
7:Nexti
8:End
(62)(1)(0)(9)(10)
●以下控制流圖的圈復雜度V(g)和基本圈復雜度EV(g)是___(63)___
(63)A.V(g)=5EV(g)=1B.V(g)=6EV(g)=6
C.V(g)=5EV(g)=5D.V(g)=6EV(g)=1
●在網絡應用測試中,網絡延遲是一個重要指標。以下關于網絡延遲的理
解,正確的是___(64)___
(64)A.指響應時間
B.指報文從客戶端發出到客戶端接收到服務器響應的間隔時間
C.指報文在網絡上的傳輸時間
D.指從報文開始進入網絡到它開始離開網絡之間的時間
●為保證測試活動的可控性,必須在軟件測試過程中進行軟件測試配置管
理,一般來說,軟件測試配置管理中最基本的活動包括___(65)___
(65)A.配置項標識、配置項控制、配置狀態報告、配置審計
B.配置基線確立、配置項控制、配置報告、配置審計
C.配置項標識、配置項變更、配置審計、配置跟蹤
D.配置項標識、配置項控制、配置狀態報告、配置跟蹤
●OriginallyintroducedbyNetscapeCommunications,___(66)___area
generalmechanismwhichHTTPServersideapplications,suchasCGI(67),canutobothstoreandretrieveinformationontheHTTP___(68)___sideof
lly,Cookiescanbeudtocompensateforthe
___(69)___itionofasimple,persistent,client-side
statesignificantlyextendsthecapabilitiesofWWW-bad___(70)___.
(66)tionsD.
Scripts
(67)
(68)
(69)ess
(70)orksD.
constrains
●WebSQLisaSQL-like___(71)___languageforextractinginformation
abilitiesforperformingnavigationofweb___(72)___
makeitaufultoolforautomatingveralweb-relatedtasksthatrequirethesystematicprocessingofeitherallthelink古代化妝 sina___(73)___,allthepagesthat
canbereachedfromagivenURLthrough___(74)___thatmatchapattern,alsoprovidestransparentaccesstoindex
rversthatcanbequeriedviatheCommon___(75)___Interface.
(71)icationD.
programming
(72)extsD.
clients
(73)olD.
operation
(74).
directories
(75)erD.
Gateway
試題一(15分)
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。
[說明]
基本路徑法設計出的測試用例能夠保證在測試中程序的每一條可執行語句
至少執行一次。以下代碼由C什語言書寫,請按要求回答問題。
voidReadPara(CStringtemp)
{
if(temp==">=")
m_Sel(0);
el
{
if(temp==">")
m_Sel(1);
el
{
if(temp=="==")
m_Sel(2);
el
{
if(temp=="<=")
m_Sel(3);
el
{
if(temp=="<")
m_Sel(4);
el
m_Sel(5);
}
}
}
}
return;
問題1](6分)
請畫出以上代碼的控制流圖。
[問題2](3分)
請計算上述控制流圖的環路復雜度V(G)。
[問題3](6分)
請使用基本路徑測試法為變量temp設計測試用例,使之滿足基本路徑覆蓋
要求。
試題二(20分)
閱讀下列說明,回答問題1至問題5,將解答填入答題紙的對應欄內。
[說明]
針對某公司辦公自動化(OA)系統的負載壓力測試,采用專業的負載壓力測
試工具來執行測試。系統采用Brow/Server架構,服務器是一臺PCServer(4
路2.7GHz處理器,4GB內存),安裝的平臺軟件包括MicrosoftInternet
InformationServer5.0,,SQLServer2000。使用2臺筆記本電腦安
裝測試工具模擬客戶端執行“登錄”業務操作。
測試目標分別為以下兩個:
第一,測試系統分別在2M、4M網絡帶寬下,能夠支持用戶登錄的最大并
發用戶數;
第二,測試服務器的吞吐量(即:每秒可以處理的交易數),主要包括服務器
CPU平均使用率達到85%時系統能夠支持的最大吞吐量和服務器CPU平均使
用率達到100%時系統能夠支持的最大吞吐量。
本次測試的性能需求是:指標“響應時間”合理范圍為0~5秒。
測試結果如下:
案例1
網絡環境:2M帶寬
客戶端性能測試結果;
注:圖中登錄響應時間的縱坐標單位是0.1秒
服務器資源使用結果:
注:圖中登錄響應時間的縱坐標單位是0.1秒
服務器資源使用結果
[問題1](3分)
簡述軟件系統交易執行響應時間(“RT”,ResponTime)的概念。
[問題2](3分)
分析案例1的測試結果數據;指出滿足系統的性能指標需求時,系統能夠
承受的并發用戶登錄的最大數量,并說明理由。
[問題3](4分)
分析案例1的測試結果數據,說明服務器CPU資源使用率是否合理,以
及帶寬是否是系統瓶頸,并陳述理由。
[問題4](4分)
分析案例2的測試結果數據,說明服務器CPU資源使用率是否合理,以
及增加帶寬是否是提高系統性能的有效方法,并陳述理由。
[問題5](6分)
論述CPU使用率成為系統性能瓶頸時,如何制定解決方案?論述網絡帶寬
成為系統性能瓶頸時,如何制定解決方案?
試題三(15分)
閱讀下列說明,回答問題1至問題4,將解答填入答題紙的對應欄內。
[說明]
軟件系統幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場
景,而同一事件不同的觸發順序和處理結果就形成事件流。場景法就是通過用例
場景描述業務操作流程,從用例開始到結束遍歷應用流程上所有接地棒 基本流(基本事
件)和備選流(分支事件)。下面是對某IC卡加油機應用系統的基本流和備選流的
描述。
基本流A;
2
驗證加油卡
加油機從加油卡的磁條中讀取賬戶代碼,并檢查它是否屬于可以接收的加油卡
3
驗證黑名單
加油機驗證卡賬戶是否存在于黑名單中,如果屬于黑名單,加油機吞卡
備選流:
B
加油卡無效
在基本流A2過程中,該卡不能夠識別或是非本機可以使用的IC卡,加油機退
卡,并退出基本流
C
卡賬戶屬于黑名單
在基本流A3過程中,判斷該卡賬產屬于黑名單,例如:已經掛失,加油機吞
卡退出基本流
D
加油卡賬面現金不足
E
加油機油量不足
[問題1](5分)
使用場景法設計測試案例,指出場景涉及到的基本流和備選流,基本流用字
母A表示,備選流用題干中描述的相應字母表示。
[問題2](4分)
場景中的每一個場景都需要確定測試用例,一般采用矩陣來確定和管理測試
用例。
如下表所示是一種通用格式,其中行代表各個測試用例,列代表測試用例的
信息。本例中的測試用例包含測試用例、ID、場景滌件、測試用例中涉及的所有
數據元素和預期結果等項目。首先確定執行用例場景所需的數據元素(本例中包
括賬號、是否黑名單卡、輸入油量、賬面金額、加油機油量),然后構建矩陣,
最后要確定包含執行場景所需的適當條件的測試用例。在下面的矩陣中,V表示
有效數據元素,I表示無效數據元素,n/a表示不適用,例如C01表示“成功加油”
基本流。請按上述規定為其它應用場景設計用例矩陣。
測試用例表
場景
賬號
預期結果
[問題3](3分)
假如每升油4元人民幣,用戶的賬戶金額為1000元,加油機內油量足夠,
那么在A4輸入油量的過程中,請運用邊界值分析方法為A4選取合適的輸入數
據(即油量,單位;升)。
[問題4](3分)
假設本系統開發人員在開發過程中通過測試發現了20個錯誤,獨立的測試
組通過上述測試用例發現了100個軟件錯誤,系統在上線后,用戶反饋了30個
錯誤,請計算缺陷探測率(DDP)。
試題四(15分)
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。
[說明]
易用性和用戶文檔是影響軟件質量的重要指標,也是直接決定一個軟件能否
取得市場成功的關鍵因素。
[問題1](5分)
用戶對軟件系統的第一認識來自于安裝,因此易用性的一個重要體現就是安
裝的易用性。簡述安裝測試應當從哪幾個方面來考慮問題2](6分)
軟件用戶界面起著引導用戶操作的重要作用,簡述整體界面測試和界面中的
元素測試分別應當設計哪些測試點問題3](4分)
軟件幫助是協助用戶使用軟件的關鍵途徑,因此也是軟件測試過程中的一個
重要內容,簡述在進行軟件幫助測試時的測試要點。
試題五(10分)
閱讀以下說明,回答問題1和問題2,將解答填入答題紙的對應欄內。
[說明]
軟件測試是與軟件開發密切相關的一系列有計劃的活動,在軟件測試過程模
型“V模型”的指導下,開發過程中應該安排一系列不同類型的測試活動。
軟件測試過程是由一系列的關鍵活動組成的,同時軟件測試質量的保證手段
是必不可少的。
[問題1](2分)
針對開發過程中的不同階段,應該包含那些類型的軟件測試。
[問題2](8分)
簡述軟件測試過程的關鍵活動,以及保證軟件測試質量的手段。
上午試題答案
下午試題答案
[問題2]
V(G)=6
[問題3]
6
除>=、>、==、<=、<之外的字符組合
試題二
[問題1]
響應時間是系統完成事務執行準備后所采集的時間戳和系統完成待執行事務后所采集的時間戳之間的時間間隔,是衡量特定類型應用事務性能的重要指
標,標志了用戶執行一項操作大致需要多長時間。
[問題2]
系統能夠承受的并發用戶登錄的最大數量為50
題中指出"通常情況下,交易操作合理的響應時間為5秒以內"。此案例中,
登錄響應時間隨虛擬并發用戶數增加而增長。在50個虛擬并發用戶的負載下,
登錄響應時間達到5秒(注意圖形中響應時間指標的比例為10)。當負載超過
50個虛擬并發用戶,響應時間超過5秒。所以此案例中最合理的并發用戶數為
50。
[問題3]
服務器CPU資源使用率搞笑段子短句 是合理的。
2M帶寬是系統處理業務的瓶頸。
理由是對比"4M帶寬登錄"案例,4M帶寬下,系統每秒處理完成的登錄個數
固定在13.5個左右,登錄響應時間隨虛擬用戶數增加而增長。在60個虛擬用戶
的壓力下,登錄響應時間在4.2秒左右(注意圖形中響應時間指標的比例為10)。
在80個虛擬用戶的壓力下,登錄響應時間在5.8秒左右,所以在合理登錄響應
時間(5秒)內預計同時登錄用戶數是70左右。服務器CPU使用率成為系統處理的瓶頸。說明隨著帶寬的提高,系統的處理能力進一步提高,同時高吞吐量造
成了系統資源的緊張,帶來了新的系統性能瓶頸。
[問題4]
服務器CPU資源使用率不合理,其平均值超過85%。
4M帶寬的網絡測試環境與2M帶寬的網絡測試環境相比,帶來了新的系統
瓶頸(CPU資源使用率平均值超過85%),所以增加帶寬不是提高系統性能的有效方法。在此基礎上,繼續提高帶寬,系統的處理能力將進一步提高,高的處
理能力會使服務器的資源瓶頸進一步加重,帶來更加嚴重的后果。
[問題5]
當CPU資源使用成為系統瓶頸時的解決方案可以概括為:
1.增加CPU的個數;
2.提高CPU的主頻;
3.將web服務器與數據庫服務器分開部署;
4.調整軟件的設計與開發;
當帶寬成為系統瓶頸時的解決方案可以概括為:
1.增加帶寬;
2.壓縮傳輸數據。
試題三
[問題1]
場景1:A
場景2:A、B
場景3:A、C
場景4:A、D
場景5:A、E
[問題2]
測試用例ID號
場景
帳號
是否黑名單卡
輸入油量
帳面金額
加油機油黑
預期結果
C02.
場景2:卡無效
1
n/a
n/a
n/a
n/a
退卡
C03.
場景3:黑名單卡
VV
n/a
n/a
n/a
吞卡
C04.
場景4:金額不足
V
I
V
IV
提示錯誤,重新輸入加油量
C05.
場景5:油量不足
V
I
V
VI
提示錯誤,重新輸入加油量
[問題3]
1.0升
2.250升
3.251升
[問題4]
DDP=Bugstester(Bugstester+Bugscustomer)=(20+100)(20+100+30)
=80%(0.8)
其中,Bugstester為測試者發現的錯誤數;
Bugscustomer為客戶發現并反饋技術支持人員進行修復的錯誤數。
試題四
[問題1]
評估安裝手冊
安裝的自動化測試
安裝選項和設置的測試
安裝過程的中斷測試
安裝順序測試
多環境安裝測試
安裝正確性測試
修復安裝與卸載測試
[問題2]
界面整體測試:規范性測試、合理性測試、一致性測試和界面定制性測試
界面元素測試:窗口測試、菜單測試、圖標測試、鼠標測試和文字測試。
[問題3]
文本的準確性
與程序的接口
幫助索引的檢查
超鏈接的正確性
鏈接的意義
風格應簡潔
試題五
[問題1]
單元測試
集成測試
確認測試(系統測試)
驗收測試
[問題2]
知識點包括:
軟件測試過程的關鍵活動:
測試需求分析
制定測試計劃
測試設計
測試執行
測試分析與總結
質量保證手段:
制定質量保證計劃、質量體系建立
測試活動審核、測試文檔評審
測試過程數據的收集、度量與分析
1、下面的哪一項測試步驟中需要進行局部數據結構測試:(A)
A、單元測試
B、集成測試
C、確認測試
D、系統測試
2、從是否需要執行被測軟件的角度,軟件測試技術可劃分的類型是:(AC)。
A、靜態測試
B、黑盒測試
C、動態測試
D、白盒測試
3、從測試階段角度,測試結束的正確順序是:(B)
A、單元測試、集成測試、系統測試、確認測試
B、單元測試、系統測試、集成測試、確認測試
C、確認測試、集成測試、系統測試、單元測試
D、確認測試、系統測試、集成測試、單元測試
4、軟件的六大質量特性包括:(A)
A、功能性、可靠性、可用性、效率、可維護、可移植
B、功能性、可靠性、可用性、效率、穩定性、可移植
C、功能性、可靠性、可擴展性、效率、穩定性、可移植
D、功能性、可靠性、兼容性、效率、穩定性、可移植
5、在GB/T17544中,軟件包質量要求包括三部分,即產品描述要求、(A)、程序和
數據要求。
A、用戶文檔要求
B、系統功能要求
C、設計要求說明
D、軟件配置要求
6、()可以作為軟件測試結束的標志。
A、使用了特定的測試用例
B、錯誤強度曲線下降到預定的水平
C、查出了預定數目的錯誤
D、按照測試計劃中所規定的時間進行了測試
7、導致軟件缺陷的原因有很多,A—D是可能的原因,其中最主要的原因包括(ABCD)。
A、軟件需求說明書編寫的不全面,不完整,不準確,而且經常更改
B、軟件設計說明書
C、軟件操作人員的水平
D、開發人員不能很好的理解需求說明書和溝通不足

本文發布于:2023-04-12 17:14:42,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/168129088244781.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:測試題.doc
本文 PDF 下載地址:測試題.pdf
| 留言與評論(共有 0 條評論) |