歷年來軟件測試經典面試題_第1頁
歷年來軟件測試經典面試題_第2頁
歷年來軟件測試經典面試題_第3頁
歷年來軟件測試經典面試題_第4頁
歷年來軟件測試經典面試題_第5頁
已閱讀5頁,還剩31頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、歷年來軟件測試經典面試題1、什么是兼容性測試?兼容性測試側重哪些方面?兼容測試:主要是檢查軟件在不同的軟硬件平臺上是否可以正常的運行,即軟件可移植性。兼容的類型:細分為平臺的兼容,網絡兼容,數據庫兼容,以及數據格式的兼容。兼容測試的重點:對兼容環境的分析。通常,是在運行軟件的環境不是很確定的情況下,才需要做兼容測試。兼容和配置測試的區別:做配置測試通常不是Clean OS下做測試,而兼容測試多是在Clean OS的環境下做的。2、我現在有個程序,發現在Windows上運行得很慢,怎么判別是程序存在問題還是軟硬件系統存在問題?1、檢查系統是否有中毒的特征;2、檢查軟件/硬件的配置是否符合軟件的推

2、薦標準;3、確認當前的系統是否是獨立,即沒有對外提供什么消耗CPU資源的服務;4、如果是C/S或者B/S結構的軟件,需要檢查是不是因為與服務器的連接有問題,或者訪問有問題造成的;5、在系統沒有任何負載的情況下,查看性能監視器,確認應用程序對CPU/內存的訪問情況。3、測試的策略有哪些?黑盒/白盒,靜態/動態,手工/自動,冒煙測試,回歸測試,公測(Beta測試的策略)4、正交表測試用例設計方法的特點是什么?1、用最少的實驗覆蓋最多的操作,測試用例設計很少,效率高,但是很復雜;2、對于基本的驗證功能,以及二次集成引起的缺陷,一般都能找出來;但是更深的缺陷,更復雜的缺陷,還是無能為力的;3、具體的環

3、境下,正交表一般都很難做的。大多數,只在系統測試的時候使用此方法。5、描述使用bugzilla缺陷管理工具對軟件缺陷(BUG)跟蹤的管理的流程?標記就是Bugzilla的狀態轉換圖。6、你覺得bugzilla在使用的過程中,有什么問題?標記界面不穩定;根據需要配置它的不同的部分,過程很煩瑣。流程控制上,安全性不好界定,很容易對他人的Bug進行誤操作;沒有綜合的評分指標,不好確認修復的優先級別。7、描述測試用例設計的完整過程?需求分析 + 需求變更的維護工作;根據需求, 得出測試需求;設計測試方案,評審測試方案;方案評審通過后,設計測試用例,再對測試用例進行評審;8、單元測試的策略有哪些?邏輯覆

4、蓋、循環覆蓋、同行評審、桌前檢查、代碼走查、代碼評審、景泰數據流分析9、LoadRunner分哪三部分?標記用戶動作設計;場景設計;測試數據分析;10、LoadRunner進行測試的流程? 標記1、 測試用例2、 創建虛擬用戶腳本3、 創建運行場景4、 運行測試腳本5、 監視場景6、 分析測試的結果以上,最好是結合一個案例,根據以上流程來介紹。11、什么是并發?在lordrunner中,如何進行并發的測試?集合點失敗了會怎么樣?標記在同一時間點,支持多個不同的操作。LoadRunner中提供IP偽裝,集合點,配合虛擬用戶的設計,以及在多臺電腦上設置,可以比較好的模擬真實的并發。集合點,即是多個

5、用戶在某個時刻,某個特定的環境下同時進行虛擬用戶的操作的。集合點失敗,則集合點的才操作就會取消,測試就不能進行。12、使用QTP做功能測試,錄制腳本的時候,要驗證多個用戶的登錄情況/查詢情況,如何操作?標記分析用戶登錄的基本情況,得出一組數據,通過性測試/失敗性測試的都有(根據TC來設計這些數據),然后錄制登錄的腳本,將關鍵的數據參數化,修改腳本,對代碼進行加強,調試腳本。13、QTP中的Action有什么作用?有幾種?標記Action的作用n 用Action可以對步驟集進行分組n 步驟重組,然后被整體調用n 擁有自己的sheetn 組合有相同需求的步驟,整體操作n 具有獨立的對象倉庫Acti

6、on的種類n 可復用Actionn 不可復用Actionn 外部Action 14、TestDirector有些什么功能,如何對軟件測試過程進行管理?標記需求管理n 定義測試范圍n 定義需求樹n 描述需求樹的功能點測試計劃n 定義測試目標和測試策略。n 分解應用程序,建立測試計劃樹。n 確定每個功能點的測試方法。n 將每個功能點連接到需求上,使測試計劃覆蓋全部的測試需求。n 描述手工測試的測試步驟n 指明需要進行自動測試的功能點測試執行n 定義測試集合。n 為每個測試人員制定測試任務和測試日程安排。n 運行自動測試。缺陷跟蹤n 記錄缺陷n 查看新增缺陷,并確定哪些是需要修正的n 相關技術人員修

7、改缺陷n 回歸測試n 分析缺陷統計圖表,分析應用程序的開發質量。15、你所熟悉的軟件測試類型都有哪些?請試著分別比較這些不同的測試類型的區別與聯系(如功能測試、性能測試)?Compatibility Testing(兼容性測試),測試軟件是否和系統的其它與之交互的元素之間兼容,如:瀏覽器、操作系統、硬件等。驗證測試對象在不同的軟件和硬件配置中的運行情況。Functional testing (功能測試),根據產品特征、操作描述和用戶方案,測試一個產品的特性和可操作行為以確定它們滿足設計需求。Performance testing(性能測試),評價一個產品或組件與性能需求是否符合的測試。包括負載

8、測試、強度測試、數據庫容量測試、基準測試等類型。16、軟件缺陷(或者叫Bug)記錄都包含了哪些內容?如何提交高質量的軟件缺陷(Bug)記錄?1,硬件平臺和操作系統2,版本3,bug編號4,bug報告優先級5,bug狀態6,發現人7,提交人8,提交日期9,指定處理人10,概述11,從屬關系12,詳細描述13,嚴重程度14,所屬模塊要提交高質量的軟件缺陷記錄要參考需求及前期詳細設計等前期文檔,設計高效測試用例,然后執行用例,對發現問題要充分肯定,然后對外發布。17、Beta測試與Alpha測試有什么區別?Beta testing(測試),測試是軟件的多個用戶在一個或多個用戶的實際使用環境下進行的測

9、試。開發者通常不在測試現場Alpha testing (測試),是由一個用戶在開發環境下進行的測試,也可以是公司內部的用戶在模擬實際操作環境下進行的受控測試18、軟件的評審一般由哪些人參加?其目的是什么?標記在正式的會議上將軟件項目的成果(包括各階段的文檔、產生的代碼等)提交給用戶、客戶或有關部門人員對軟件產品進行評審和批準。其目的是找出可能影響軟件產品質量、開發過程、維護工作的適用性和環境方面的設計缺陷,并采取補救措施,以及找出在性能、安全性和經濟方面的可能的改進。 人員:用戶、客戶或有關部門開發人員,測試人員,需求分析師都可以,就看處于評審那個階段 19、階段評審與項目評審有什么區別?標記

10、階段評審 對項目各階段評審:對階段成果和工作項目評審 對項目總體評審:對工作和產品20、闡述工作版本的定義?軟件開發過程中,用于內部測試的功能和性能不完善的軟件版本。工作版本既可以是系統的可操作版本,也可以是要在發布產品中演示的部分功能模塊。 21、什么是樁模塊?什么是驅動模塊?樁模塊:被測模塊調用模塊驅動模塊 調用被測模塊的模塊22、什么是扇入?什么是扇出?扇入:被調次數,扇出:調其它模塊數目23、你認為做好測試計劃工作的關鍵是什么?標記軟件測試計劃就是在軟件測試工作正式實施之前明確測試的對象,并且通過對資源、時間、風險、測試范圍和預算等方面的綜合分析和規劃,保證有效的實施軟件測試;做好測試

11、計劃工作的關鍵 :目的,管理,規范1. 明確測試的目標,增強測試計劃的實用性編寫軟件測試計劃得重要目的就是使測試過程能夠發現更多的軟件缺陷,因此軟件測試計劃的價值取決于它對幫助管理測試項目,并且找出軟件潛在的缺陷。因此,軟件測試計劃中的測試范圍必須高度覆蓋功能需求,測試方法必須切實可行,測試工具并且具有較高的實用性,便于使用,生成的測試結果直觀、準確2堅持“5W”規則,明確內容與過程“5W”規則指的是“What(做什么)”、“Why(為什么做)”、“When(何時做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”規則創建軟件測試計劃,可以幫助測試團隊理解測試的目的(Why),

12、明確測試的范圍和內容(What),確定測試的開始和結束日期(When),指出測試的方法和工具(How),給出測試文檔和軟件的存放位置(Where)。3采用評審和更新機制,保證測試計劃滿足實際需求測試計劃寫作完成后,如果沒有經過評審,直接發送給測試團隊,測試計劃內容的可能不準確或遺漏測試內容,或者軟件需求變更引起測試范圍的增減,而測試計劃的內容沒有及時更新,誤導測試執行人員。4. 分別創建測試計劃與測試詳細規格、測試用例應把詳細的測試技術指標包含到獨立創建的測試詳細規格文檔,把用于指導測試小組執行測試過程的測試用例放到獨立創建的測試用例文檔或測試用例管理數據庫中。測試計劃和測試詳細規格、測試用例

13、之間是戰略和戰術的關系,測試計劃主要從宏觀上規劃測試活動的范圍、方法和資源配置,而測試詳細規格、測試用例是完成測試任務的具體戰術。 24、你認為做好測試用例工作的關鍵是什么?需求和設計文檔的理解程度,對系統的熟悉程度25、簡述一下缺陷的生命周期?提交-確認-分配-修復-驗證-關閉26、軟件的安全性應從哪幾個方面去測試?用戶認證機制:如數字證書、智能卡、雙重認證、安全電子交易協議加密機制安全防護策略:如安全日志、入侵檢測、隔離防護、漏洞掃描數據備份與恢復手段:存儲設備、存儲優化、存儲保護、存儲管理防病毒系統27、軟件配置管理工作開展的情況和認識?標記軟件配置管理貫穿于軟件開發、測試活動的始終,覆

14、蓋了開發、測試活動的各個環節,它的重要作用之一就是要全面的管理保存各個配置項,監控各配置項的狀態,并向項目經理及相關的人員報告,從而實現對軟件過程的控制。軟件測試配置管理包括4個最基本的活動:配置項標識配置項控制配置項狀態報告配置審計 軟件配置管理通常借助工具來輔助,主要有MS SourceSafe、Rational ClearCase等28、你覺得軟件測試通過的標準應該是什么樣的?缺陷密度值達到客戶的要求29、引入測試管理的含義?標記 風險分析,進度控制、角色分配、質量控制30、一套完整的測試應該由哪些階段組成?需求分析測試計劃測試設計測試環境搭建測試執行測試記錄缺陷管理軟件評估31、集成測

15、試也叫組裝測試或者聯合測試,請簡述集成測試的主要內容?(1)在把各個模塊連接起來的時候,穿越模塊接口的數據是否會丟失;(2)一個模塊的功能是否會對另一個模塊的功能產生不利的影響;(3)各個子功能組合起來,能否達到預期要求的父功能;(4)全局數據結構是否有問題;(5)單個模塊的誤差累積起來,是否會放大,從而達到不能接受的程度。32、簡述集成測試與系統測試關系?(1)集成測試的主要依據概要設計說明書,系統測試的主要依據是需求設計說明書;(2)集成測試是系統模塊的測試,系統測試是對整個系統的測試,包括相關的軟硬件平臺、網絡以及相關外設的測試。33、軟件測試的文檔測試應當貫穿于軟件生命周期的全過程,其

16、中用戶文檔是文檔測試的重點。那么軟件系統的用戶文檔包括哪些?用戶手冊安裝和設置指導聯機幫助指南、向導樣例、示例和模板授權/注冊登記表最終用戶許可協議34、軟件系統中除用戶文檔之外,文檔測試還應該關注哪些文檔?開發文檔軟件需求說明書數據庫設計說明書概要設計說明書詳細設計說明書可行性研究報告管理文檔項目開發計劃測試計劃測試報告開發進度月報開發總結報告35、簡述軟件系統中用戶文檔的測試要點?(1)讀者群。文檔面向的讀者定位要明確。對于初級用戶、中級用戶以及高級用戶應該有不同的定位(2)術語。文檔中用到的術語要適用與定位的讀者群,用法一致,標準定義與業界規范相吻合。(3)正確性。測試中需檢查所有信息是

17、否真實正確,查找由于過期產品說明書和銷售人員夸大事實而導致的錯誤。檢查所有的目錄、索引和章節引用是否已更新,嘗試鏈接是否準確,產品支持電話、地址和郵政編碼是否正確。(4)完整性。對照軟件界面檢查是否有重要的分支沒有描述到,甚至是否有整個大模塊沒有描述到。(5)一致性。按照文檔描述的操作執行后,檢查軟件返回的結果是否與文檔描述的相同。(6)易用性。對關鍵步驟以粗體或背景色給用戶以提示,合理的頁面布局、適量的圖表都可以給用戶更高的易用性。需要注意的是文檔要有助于用戶排除錯誤。不但描述正確操作,也要描述錯誤處理辦法。文檔對于用戶看到的錯誤信息應當有更詳細的文檔解釋。(7)圖表與界面截圖。檢查所有圖表

18、與界面截圖是否與發行版本相同。(8)樣例與示例。像用戶一樣載入和使用樣例。如果是一段程序,就輸入數據并執行它。以每一個模塊制作文件,確認它們的正確性。(9)語言。不出現錯別字,不要出現有二義性的說法。特別要注意的是屏幕截圖或繪制圖形中的文字。(10)印刷與包裝。檢查印刷質量;手冊厚度與開本是否合適;包裝盒的大小是否合適;有沒有零碎易丟失的小部件等等。文檔測試主要包含什么內容?文檔的完整性:主要是測試文檔內容的全面性和完整性,從總體上把握文檔的質量。描述與軟件實際情況的一致性:主要測試軟件文檔和軟件實施的一致性。易理解性:主要是檢查文檔對關鍵、重要的操作和有無圖文字說明,文字、圖表是否易于理解。

19、文檔提供操作的實訓:這項檢查內容主要針對用戶手冊。主要功能和關鍵操作提供的應用實例是否豐富,提供的實訓描述是否詳細。印刷和包裝質量:主要是檢查軟件穩定的商業化程序。36、單元測試主要內容是什么?1,模塊接口測試。單元測試的基礎,只有在數據能正確流入,流出模塊的前提下才有意義。2,局部數據結構測試 檢查局部數據結構是為了保證臨時存儲在模塊內的數據在程序執行中完整,正確。重點是一些執行函數是否正確執行,內部是否運行正確。局部數據結構往往是錯誤的根源,應仔細設計測試用例。3,邊界條件測試 單元測試中最重要的一項任務。因為軟件經常在邊界上失敗,采用邊界值分析,可能發現新的錯誤。4,模塊中所有獨立路徑的

20、測試 在模塊中執行每一條獨立執行路徑進行測試,單元測試的基本任務保證模塊中每條語句執行一次。5,模塊的各條錯誤處理通路測試:程序在遇到異常情況時不應該退出,好的程序應能預見各種出錯條件,并預設各種出錯處理通路。37、如何理解強度測試?強度測試是為了確定系統在最差工作環境的工作能力,也可能是用于驗證在標準工作壓力下的各種資源的最下限指標。它和壓力測試的目標是不同的,壓力測試是在標準工作環境下,不斷增加系統負荷,最終測試出該系統能力達到的最大負荷(穩定和峰值),而強度測試則是在非標準工作環境下,甚至不斷人為降低系統工作環境所需要的資源,如網絡帶寬,系統內存,數據鎖等等,以測試系統在資源不足的情況下

21、的工作狀態,通過強度測試,可以確定本系統正常工作的最差環境.強度測試和壓力測試的測試指標相近,大多都是與時間相關的指標,如并發量(吞吐量),延遲(最大最小平均)以及順序指標等強度測試需要對系統的結構熟悉,針對系統的特征設計強度測試的方法38、如何理解壓力、負載、性能測試測試?性能測試是一個較大的范圍,實際上性能測試本身包括了性能,強度,壓力等多方面的測試內容。壓力測試是對服務器的穩定性以及負載能力等方面的測試。主要任務是獲取系統正確運行的極限,檢查系統的瞬間峰值負荷下正確執行的能力。增大訪問系統的用戶數量,或者幾個用戶進行大數據量操作都是壓力測試,而負載測試是壓力相對較大的測試,性能測試的重要

22、部分。100個用戶對系統進行連續半小時的訪問可以看做壓力測試,連續訪問8個小時就可以認為是負載測試。實際上,做壓力測試和負載測試沒有明顯的區別,測試人員應該站在關注整理性能的高度上來對系統進行測試。39、什么是系統瓶頸?主要指整個軟件硬件構成的軟件系統在某一個方面或者幾個方面能力不能滿足用戶的特定業務要求。“特定”是指瓶頸會在某些條件下出現。嚴格的技術角度上講,所有的系統都會有瓶頸,因為大多數系統的資源配置是不協調的,如cup使用率剛好到達100%時,內存正好耗盡的系統。但是不多見。所以我們要從應用角度討論:關鍵是看系統能否盲足用戶需求。在用戶極限使用系統的情況下,系統的響應仍然正常,可以認為

23、系統沒有瓶頸或者瓶頸不影響用戶工作。測試系統瓶頸主要是實現下面兩個目的:-發現表面的瓶頸。模擬用戶的操作,找出用戶極限使用系統時的瓶頸,然后解決瓶頸,這是性能測試的基本目標。-發現潛在的瓶頸并解決,保證系統的長期穩定。40、功能測試用例需要詳細到什么程度才是合格的?一,詳細到每個步驟都寫出來,目的是即使一個不了解的新手都可以按照測試用例來執行工作。二,主張寫的粗糙些,類似編寫測試大綱。因為軟件開發需求管理不規范,頻繁變動。這樣的測試用例容易維護。然測試執行人員有更大的發揮空間。實際上,軟件測試用例的詳細程度首先要以覆蓋到測試點為基本要求。41、配置和兼容性測試的區別是什么?配置測試的目的是保證

24、軟件在其相關的硬件上能夠正常運行,而兼容性測試主要是測試軟件能否與不同的軟件正確協作。1,配置測試的目的是保證軟件在其相關的硬件上能夠正常運行的,而兼容測試主要是測試軟件能否與不同的軟件兼容。2,配置測試的核心內容:使用各種硬件來測試軟件的運行情況,包括軟件在不同的主機/主件上的運行情況,不同的外設,不同的接口,不同的可選項。3,兼容測試的核心內容1,測試軟件在不同的操作系統或者同一系統的不同版本上兼容。2,軟件本身能否向前或者向后兼容。3,測試軟件能否與其它相關的軟件兼容。4,數據兼容測試,主要是指數據能否共享。配置和兼容性測試通稱對開發系統類軟件比較重要,例如驅動程序、操作系統、數據庫管理

25、系統等。具體進行時仍然按照測試用例來執行。42、測試中的“殺蟲劑怪事”是指什么?“殺蟲劑怪事”用于描述測試人員對同一測試對象進行的測試次數越多,發現的缺陷就會越來越少的現象。就像老用一種農藥,害蟲就會有免疫力,農藥發揮不了效力。這種現象的根本原因就是測試人員對測試軟件過于熟悉,形成思維定勢。為了克服這種現象,測試人員需要不斷編寫新的測試程序或者測試用例,對程序的不同部分進行測試,以發現更多的缺陷。也可以引用新人來測試軟件,剛剛進來的新手往往能發現一些意想不到的問題。43、完全測試程序是可能的嗎?實際上完全測試是不可能的。主要有以下一個原因:-完全測試比較耗時,時間上不允許;-完全測試通常意味著

26、較多資源投入,這在現實中往往是行不通的;-輸入量太大,不能一一進行測試;-輸出結果太多,只能分類進行驗證;-軟件實現途徑太多;-軟件產品說明書沒有客觀標準,從不同的角度看,軟件缺陷的標準不同;因此測試的程度要根據實際情況確定。44、軟件測試人員就是QA嗎?軟件測試人員的職責是盡可能的找出軟件缺陷,確保缺陷能被修復。QA(質量保證人員)主要職責是創建或者制定標準和方法,提高促進軟件開發能力和減少軟件缺陷。測試人員的主要工作是測試,質量保證人員日常工作重要內容是檢查與評審,測試工作也是保證人員的工作對象。45、測試產品與測試項目的區別是什么?習慣上吧開發完成進行商業化,幾乎不進行代碼修改就可以售給

27、用戶使用的軟件稱為軟件產品。把針對一個或幾個特定的用戶而開發的軟件稱為軟件項目,軟件項目是一種個性化的產品,可以是按照用戶要求全部重新開發,也可以修改已有的軟件產品來滿足特定的用戶需求。區別:質量不同,產品的質量要求高一些,修復發布后產品的缺陷成本較高,甚至帶來很多負面的影響。而項目通常面向某一個用戶,雖然質量越高越好,但是一般只要滿足用戶要求就可以。測試資源投入多少不同。軟件產品通常是研發中心來開發,進度壓力要小些,同時由于質量要求高,因此會投入較多的人力,物力資源。46、和用戶共同測試(UAT測試)的注意點有哪些?標記軟件產品在投產前,通常都會進行用戶驗收測試。如果用戶驗收測試沒有通過,直

28、接結果就是那不到“Money”,間接影響是損害了公司的形象,而后者的影響往往更嚴重。根據作者的經驗,用戶驗收測試一定要讓用戶滿意。實際上用戶現場測試更趨于是一種演示。在不欺騙用戶的前提下,我們向用戶展示我們軟件的優點,最后讓“上帝”滿意并欣然掏出“銀子”才是我們的目標。因此用戶測試要注意下面的事項:(1)用戶現場測試不可能測試全部功能,因此要測試核心功能。這需要提前做好準備,這些核心功能一定要預先經過測試,證明沒有問題才可以和用戶共同進行測試。測試核心模塊的目的是建立用戶對軟件的信心。當然如果這些模塊如果問題較多,不應該進行演示。(2)如果某些模塊確實有問題,我們可以演示其它重要的業務功能模塊

29、,必要時要向用戶做成合理的解釋。爭得時間后,及時修改缺陷來彌補。(3)永遠不能欺騙用戶,蒙混過關。道理很簡單,因為軟件是要給用戶用的,問題早晚會暴露出來,除非你可以馬上修改。和用戶進行測試還要注意各種交流技巧,爭取不但短期利益得到了滿足,還要為后面得合作打好基礎。47、如何編寫提交給用戶的測試報告?標記隨著測試工作越來越受重視,開發團隊向客戶提供測試文檔是不可避免的事情。很多人會問:“我們可以把工作中的測試報告提供給客戶嗎?”答案是否定的。因為提供內部測試報告,可能會讓客戶失去信心,甚至否定項目。測試報告一般分為內部測試報告和外部測試報告。內部報告是我們在測試工作中的項目文檔,反映了測試工作的

30、實施情況,這里不過多討論,讀者可以參考相關教材。這里主要討論一下外部測試報告的寫法,一般外部測試報告要滿足下面幾個要求:-根據內部測試報告進行編寫,一般可以摘錄;-不可以向客戶報告嚴重缺陷,即使是已經修改的缺陷,開發中的缺陷也沒有必要讓客戶知道;-報告上可以列出一些缺陷,但必須是中級的缺陷,而且這些缺陷必須是修復的;-報告上面的內容盡量要真實可靠;-整個測試報告要仔細審閱,力爭不給項目帶來負面作用,尤其是性能測試報告。總之,外部測試報告要小心謹慎的編寫。48、什么是軟件測試,軟件測試的目的?使用人工或者自動手段來運行或測試某個系統的過程,目的在于檢驗它是否滿足規定的需求或者弄清預期結果和實際結

31、果之間的差別。49、寫出bug報告流轉的步驟,每步的責任人及主要完成的工作。標記參考答案:(要結合自己實際的工作經驗進行回答,不同公司略有區別)測試人員提交新的Bug入庫,錯誤狀態為New。 高級測試員/測試經理驗證錯誤,如果確認是錯誤,分配給開發組。設置狀態為Open。如果不是錯誤,則拒絕,設置為Declined狀態。 開發經理分配bug至對應的模塊開發人員。開發人員查詢狀態為Open的Bug,如果不是錯誤,則置狀態為Declined;如果是Bug則修復并置狀態為Fixed。不能解決的Bug,要留下文字說明及保持Bug為Open狀態。 對于不能解決和延期解決的Bug,不能由開發人員自己決定,

32、一般要通過某種會議(評審會)通過才能認可。 測試人員查詢狀態為Fixed的Bug,然后驗證Bug是否已解決,如解決,置Bug的狀態為Closed,如沒有解決,置bug狀態為Reopen。50、畫出軟件測試的V模型圖。 51、請試著比較一下黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系。黑盒測試:已知產品的功能設計規格,可以進行測試證明每個已經實現的功能是否符合需求。白盒測試:已知產品的內部工作過程,可以通過測試證明每種內部操作是否符合設計規格的要求。所有內部成分是否經過檢查。黑盒測試要在軟件的接口處進行,這種方法是把測試對象看做一個黑盒子,測試人員完全不考慮程序內部邏輯

33、和內部特性,只依據程序的需求規格說明書,檢查程序的功能是否符合太的功能說明。因此黑盒測試又叫功能測試或者數據驅動測試。白盒測試是對軟件的過程性細節做仔細的檢查,這種方法是把測試對象看做一個打開的盒子,太允許測試人員利用程序內部的邏輯結構和有關信息,設計或者選擇測試用例,對程序所有邏輯路徑進行測試。通過不同點檢查程序的狀態,確定實際狀態是否與預期的狀態一致。因此,白盒測試又叫邏輯驅動測試或者結構測試。單元測試(模塊測試)是開發者編寫的一小段代碼,用于檢驗被測代碼的一個很小的,很明確的功能是否正確。通常而言,一個單元測試用于判斷某個特定條件下某個特定函數的行為,由程序員自己完成。集成測試(組裝測試

34、,聯合測試)是單元測試的邏輯擴展。它的最簡單形式:兩個已經測試過的單元組合成一個組件,并且測試他們之間的接口。方法是測試片段的組合,并最終擴展進程,將您的模塊與其他組的模塊一起測試,最后,將構成進程的所有模塊一起測試。系統測試:將經過測試的子系統裝配成一個完整的系統來測試。目的是對最終軟件系統進行全面的測試,確保最終軟件系統滿足產品需求并且遵循系統設計。驗收測試:目的是確保軟件準備就緒,并且可以讓最終用戶將其用于執行軟件的既定功能和任務。驗收測試向用戶表面系統能夠像預定需求那樣工作。52、測試計劃工作的目的是什么?測試計劃工作的內容都包括什么?其中哪些是最重要的?標記軟件測試計劃是指導測試過程

35、的綱領性文件,包含了產品概述、測試策略、測試方法、測試區域、測試配置、測試周期、測試資源、測試交流、風險分析等內容。借助軟件測試計劃,參與測試的項目成員,尤其是測試管理人員,可以明確測試任務和測試方法,保持測試實施過程的順暢溝通,跟蹤和控制測試進度,應對測試過程中的各種變更。測試計劃和測試詳細規格、測試用例之間是戰略和戰術的關系,測試計劃主要從宏觀上規劃測試活動的范圍、方法和資源配置,而測試詳細規格、測試用例是完成測試任務的具體戰術。所以其中最重要的是測試測試策略和測試方法(最好是能先評審)53、您所熟悉的測試用例設計方法都有哪些?請分別以具體的例子來說明這些方法在測試用例設計工作中的應用。1

36、等價類劃分劃分等價類: 等價類是指某個輸入域的子集合.在該子集合中,各個輸入數據對于揭露程序中的錯誤都是等效的.并合理地假定:測試某等價類的代表值就等于對這一類其它值的測試.因此,可以把全部輸入數據合理劃分為若干等價類,在每一個等價類中取一個數據作為測試的輸入條件,就可以用少量代表性的測試數據.取得較好的測試結果.等價類劃分可有兩種不同的情況:有效等價類和無效等價類.2邊界值分析法邊界值分析方法是對等價類劃分方法的補充。測試工作經驗告訴我,大量的錯誤是發生在輸入或輸出范圍的邊界上,而不是發生在輸入輸出范圍的內部.因此針對各種邊界情況設計測試用例,可以查出更多的錯誤.使用邊界值分析方法設計測試用

37、例,首先應確定邊界情況.通常輸入和輸出等價類的邊界,就是應著重測試的邊界情況.應當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數據,而不是選取等價類中的典型值或任意值作為測試數據.3錯誤推測法基于經驗和直覺推測程序中所有可能存在的各種錯誤, 從而有針對性的設計測試用例的方法.錯誤推測方法的基本思想: 列舉出程序中所有可能有的錯誤和容易發生錯誤的特殊情況,根據他們選擇測試用例. 例如, 在單元測試時曾列出的許多在模塊中常見的錯誤. 以前產品測試中曾經發現的錯誤等, 這些就是經驗的總結. 還有, 輸入數據和輸出數據為0的情況. 輸入表格為空格或輸入表格只有一行. 這些都是容易發生錯誤的情況.

38、可選擇這些情況下的例子作為測試用例.4因果圖方法前面介紹的等價類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條件之間的聯系, 相互組合等. 考慮輸入條件之間的相互組合,可能會產生一些新的情況. 但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價類,他們之間的組合情況也相當多. 因此必須考慮采用一種適合于描述對于多種條件的組合,相應產生多個動作的形式來考慮設計測試用例. 這就需要利用因果圖(邏輯模型). 因果圖方法最終生成的就是判定表. 它適合于檢查程序輸入條件的各種組合情況.54、軟件的構造號與版本號之間的區別?BVT(BuildVerificationT

39、est)標記參考答案:版本控制命名格式: 主版本號.子版本號.修正版本號.編譯版本號 Major.Minor .Revision.Build 應根據下面的約定使用這些部分:Major :具有相同名稱但不同主版本號的程序集不可互換。例如,這適用于對產品的大量重寫,這些重寫使得無法實現向后兼容性。Minor :如果兩個程序集的名稱和主版本號相同,而次版本號不同,這指示顯著增強,但照顧到了向后兼容性。例如,這適用于產品的修正版或完全向后兼容的新版本。Build :內部版本號的不同表示對相同源所作的重新編譯。這適合于更改處理器、平臺或編譯器的情況。Revision :名稱、主版本號和次版本號都相同但修

40、訂號不同的程序集應是完全可互換的。這適用于修復以前發布的程序集中的安全漏洞。BVT(BuildVerificationTest):作為Build的一部分,主要是通過對基本功能、特別是關鍵功能的測試,保證新增代碼沒有導致功能失效,保證版本的持續穩定。實現BVT方式是有以下幾種:1、測試人員手工驗證關鍵功能實現的正確性。特點:這是傳統開發方法中,通常采用的方式。無需維護測試腳本的成本,在測試人力資源充足,測試人員熟悉業務、并對系統操作熟練情況下效率很高,比較靈活快速。缺點:人力成本較高;對測試人員能力有一定要求;測試人員面對重復的工作,容易產生疲倦懈怠,從而影響測試質量。2、借助基于GUI的自動化

41、功能測試工具來完成,將各基本功能操作錄制成測試腳本,每次回放測試腳本驗證功能實現的正確性。特點:能夠模擬用戶操作完成自動的測試,從UI入口到業務實現,每一層的代碼實現都經過驗證;節約人力成本;降低測試人員重復勞動的工作量,機器不會疲倦;缺點:對于UI變動比較頻繁的系統來說,這種方式的維護成本很高,實施起來非常困難。另外,在項目周期較短且后續無延續性或繼承的情況下,也不推薦使用此方式。3、由開發人員通過自動化測試工具完成業務層的BVT測試。特點:通過對業務層關鍵功能的持續集成測試,保證系統功能的持續穩定。可以結合DailyBuild,做為Build的一部分,自動實現并輸入BVT報告。缺點:僅對業

42、務規則實現的正確性進行了測試,對表現層無法測試到,對于諸如:前臺頁面控件各種事件響應、頁面元素變化等方面的問題無法保證。55、集成測試通常都有那些策略?基于分解的集成:大爆炸集成自頂向下集成自底向上集成 三明治集成基于路徑的集成:分層集成基于功能的集成:高頻集成基于進度的集成基于風險集成基于事件集成基于使用的集成C/S集成56、基于WEB信息管理系統測試時應考慮的因素有哪些?標記參考答案:57、軟件測試項目從什么時候開始,?為什么?需求分析開始。盡早了解被測項目。58、什么是測試評估?測試評估的范圍是什么?標記參考答案:59、軟件驗收測試除了alpha ,beta測試以外,還有哪一種?正式驗收

43、測試60、需求測試注意事項有哪些?完整性:每一項需求都必須將所要實現的功能描述清楚,以使開發人員獲得設計和實現這些功能所需的所有必要信息。 正確性:每一項需求都必須準確地陳述其要開發的功能。一致性:一致性是指與其它軟件需求或高層(系統,業務)需求不相矛盾。可行性:每一項需求都必須是在已知系統和環境的權能和限制范圍內可以實施的。無二義性:對所有需求說明的讀者都只能有一個明確統一的解釋,由于自然語言極易導致二義性,所以盡量把每項需求用簡潔明了的用戶性的語言表達出來。健壯性:需求的說明中是否對可能出現的異常進行了分析,并且對這些異常進行了容錯處理。必要性:必要性可以理解為每項需求都是用來授權你編寫文

44、檔的根源。要使每項需求都能回溯至某項客戶的輸入,如Use Case或別的來源。可測試性:每項需求都能通過設計測試用例或其它的驗證方法來進行測試。可修改性:每項需求只應在S R S 中出現一次。這樣更改時易于保持一致性。可跟蹤性:應能在每項軟件需求與它的根源和設計元素、源代碼、測試用例之間建立起鏈接鏈,這種可跟蹤性要求每項需求以一種結構化的,粒度好(f i n e - g r a i n e d )的方式編寫并單獨標明,61、測試用例通常包括那些內容?著重闡述編制測試用例的具體做法 測試用例應該描述: 1,測試點2,編號3,輸入4,預期結果5,測試結果的評價標準6 ,測試數據,步驟,甚至輔助的腳

45、步,程序等。做法:1,測試用例文檔。編寫測試用例文檔應有的文檔模板,必須符合內部的規范要求。2,測試用例的設置。按功能,路徑等。3,設計測試用例。等價類劃分法,邊界值分析法,錯誤推測法,因果圖法,邏輯覆蓋法等。根據軟件不同而采取不同方法。62、在分別測試winform的C/S結構與測試WEB結構的軟件是,應該采取什么樣的方法分別測試?他們存在什么樣的區別與聯系? 63、在測試winform的C/S結構軟件時,發現這個軟件的運行速度很慢,您會認為是什么原因?您會采取哪些方法去檢查這個原因? 開發及環境搭建類面試題64、簡述DNS、活動目錄、域的概念。DNS:域名解析服務。將網絡域名解析成ip地址

46、。活動目錄:微軟提供的目錄服務的一種。它存儲有關網絡上的對象信息,并使管理員和用戶更方便的查找和使用這類信息。域:網絡系統的一個安全邊界,在一個域當中,計算機和用戶共享一系列的安全信息。65、描述TCP/IP協議的層次結構,以及每一層中重要協議。TCP/IP協議應用層/ApplicationHTTP、SMTP、FTP傳輸層/TransportTCP、UDP網絡層/NetworkIP鏈路層/LinkARP、RARP66、簡述子網掩碼的用途。主要用來判斷兩個ip地址是否處于同一個局域網中,子網掩碼是由連續的2進制1組成的。子網掩碼和ip地址進行按位與運算后,結果一致,表示處于一個局域網中,如果不一

47、致,表示不再一個局域網中,需要尋找出路。67、說出4種以上常用的操作系統及其主要的應用范圍(微軟的操作系統除外)。Linux(RedHat Debian, ubantu):主要用于搭建各類服務器MAC OS:蘋果機的操作系統,用于圖像處理和一些軟件開發平臺Unix(AIX:IBM服務器的專用操作系統)Solaris:Sun操作系統;NetBSD68、在Linux系統中,一個文件的訪問權限是755,其含義是什么?755表示該文件所有者對文件具有讀,寫,執行權限。該文件所有者所在組用戶及其他用戶對該文件具有讀和執行權限。69、Ghost的主要用途和常用方法?標記Ghost是一個非常著名的硬盤克隆工

48、具。該工具的主要作用是可以將一個硬盤或硬盤中的某個分區原封不動的復制到另一個硬盤或其他的分區中。如果你需要備份啟動分區或者是需要在多臺機器上安裝相應的系統和應用程序,都可以通過Ghost來實現,相信通過這個工具備份,恢復速度和硬盤安裝速度會成倍的提高。Norton Ghost有一個很大的特點,就是在克隆硬盤時不會改變任何文件信息,程序可以很好的支持FAT16、FAT32以及NTFS格式的文件分配結構(其中包括Windows 2000的文件分配格式),雖然是DOS環境下運行的程序,但工具可支持Win 9x的長文件名特性。常用方法包括:硬盤克隆、分區克隆、硬盤或分區克隆成鏡像文件等。70、在Red

49、Hat中,從root用戶切到userl用戶,一般用什么命令?參考答案:susu user1 切換到user1,但切換后的當前目錄還是root訪問的目錄su user1 切換到user1,并且當前目錄切換到user1的根目錄下(/home/user1/)71、Linux中,一般怎么隱藏文件?參考答案:文件名以一個.開頭72、如何將自己的本地磁盤(D)做成FTP供遠端主機使用?參考答案:Windows下安裝FTP服務,并將FTP的根目錄指向D盤即可。73、對RUP.CMM,CMMI,XP,PSP.TSP的認識?標記參考答案:軟件過程標準:CMMI、PSP、TSP、RUP、軟件工程規范國家標準;(A

50、P、XP、ASD等開發過程思想好像還不能稱其為標準)RUP(Rational Unified Process)是Rational公司提出的一套開發過程模型,它是一個面向對象軟件工程的通用業務流程。它描述了一系列相關的軟件工程流程,它們具有相同的結構,即相同的流程構架。RUP 為在開發組織中分配任務和職責提供了一種規范方法,其目標是確保在可預計的時間安排和預算內開發出滿足最終用戶需求的高品質的軟件。RUP具有兩個軸,一個軸是時間軸,這是動態的。另一個軸是工作流軸,這是靜態的。在時間軸上,RUP劃分了四個階段:初始階段、細化階段、構造階段和發布階段。每個階段都使用了迭代的概念。在工作流軸上,RUP

51、設計了六個核心工作流程和三個核心支撐工作流程,核心工作流軸包括:業務建模工作流、需求工作流、分析設計工作流、實現工作流、測試工作流和發布工作流。核心支撐工作流包括:環境工作流、項目管理工作流和配置與變更管理工作流。RUP 匯集現代軟件開發中多方面的最佳經驗,并為適應各種項目及組織的需要提供了靈活的形式。作為一個商業模型,它具有非常詳細的過程指導和模板。但是同樣由于該模型比較復雜,因此在模型的掌握上需要花費比較大的成本。尤其對項目管理者提出了比較高的要求。CMM(Capability Maturity Model能力成熟度模型) 由美國卡內基-梅隆大學的軟件工程研究所(簡稱SEI)受美國國防部委

52、托,于1991年研究制定,初始的主要目的是為了評價美國國防部的軟件合同承包組織的能力,后因為在軟件企業應用CMM模型實施過程改進取得較大的成功,所以在全世界范圍內被廣泛使用,SEI同時建立了主任評估師評估制度,CMM的評估方法為CBAIPI。CMM的本質是軟件管理工程的一個部分。它是對于軟件組織在定義,實現,度量,控制和改善其軟件過程的進程中各個發展階段的描述。他通過5個不斷進化的層次來評定軟件生產的歷史與現狀:初始層是混沌的過程;可重復層是經過訓練的軟件過程;定義層是標準一致的軟件過程;管理層是可預測的軟件過程;優化層是能持續改善的軟件過程。CMM/PSP/TSP即軟件能力成熟度模型/ 個體

53、軟件過程/群組軟件過程,是1987年美國 Carnegie Mellon 大學軟件工程研究所(CMU/SEI)以W.S.Humphrey為首的研究組發表的研究成果承制方軟件工程能力的評估方法。CMMI是SEI于2000年發布的CMM的新版本。CMMI不但包括了軟件開發過程改進,還包含系統集成、軟硬件采購等方面的過程改進內容。CMMI糾正了CMM存在的一些缺點,使其更加適用企業的過程改進實施。CMMI適用SCAMPI評估方法。需要注意的是,SEI沒有廢除CMM模型,只是停止了CMM評估方法:CBAIPI。現在如要進行CMM評估,需使用SCAMPI方法。但CMMI模型最終代替CMM模型的趨勢不可避

54、免。XP (極限編程)規定了一組核心價值和方法,可以讓軟件開發人員發揮他們的專長:編寫代碼。XP 消除了大多數重量型過程的不必要產物,通過減慢開發速度、耗費開發人員的精力(例如干特圖、狀態報告,以及多卷需求文檔)從目標偏離。XP 的核心價值:交流、簡單、反饋、勇氣。 74、DNS是什么,它是如何工作的?參考答案:域名解析服務。用于將域名解析為IP,或反和將IP解析為域名。客戶機可指定DNS服務器來解析,或用本機hosts文件進行解析。75、防火墻如何保證安全的?主要有哪些?參考答案:防火墻分類1 從防火墻的軟、硬件形式來分的話,防火墻可以分為軟件防火墻和硬件防火墻以及芯片級防火墻。 第一種:軟

55、件防火墻 軟件防火墻運行于特定的計算機上,它需要客戶預先安裝好的計算機操作系統的支持,一般來說這臺計算機就是整個網絡的網關。俗稱“個人防火墻”。軟件防火墻就像其它的軟件產品一樣需要先在計算機上安裝并做好配置才可以使用。防火墻廠商中做網絡版軟件防火墻最出名的莫過于Checkpoint。使用這類防火墻,需要網管對所工作的操作系統平臺比較熟悉。 第二種:硬件防火墻 這里說的硬件防火墻是指“所謂的硬件防火墻”。之所以加上所謂二字是針對芯片級防火墻說的了。它們最大的差別在于是否基于專用的硬件平臺。目前市場上大多數防火墻都是這種所謂的硬件防火墻,他們都基于PC架構,就是說,它們和普通的家庭用的PC沒有太大

56、區別。在這些PC架構計算機上運行一些經過裁剪和簡化的操作系統,最常用的有老版本的Unix、Linux和FreeBSD系統。 值得注意的是,由于此類防火墻采用的依然是別人的內核,因此依然會受到OS(操作系統)本身的安全性影響。 傳統硬件防火墻一般至少應具備三個端口,分別接內網,外網和DMZ區(非軍事化區),現在一些新的硬件防火墻往往擴展了端口,常見四端口防火墻一般將第四個端口做為配置口、管理端口。很多防火墻還可以進一步擴展端口數目。 第三種:芯片級防火墻 芯片級防火墻基于專門的硬件平臺,沒有操作系統。專有的ASIC芯片促使它們比其他種類的防火墻速度更快,處理能力更強,性能更高。做這類防火墻最出名的廠商有NetScreen、FortiNet、Cisco等。這類防火墻由于是專用OS(操作系統),因此防火墻本身的漏洞比較少,不過價格相對比較高昂。 防火墻技術雖然出現了許多,但總體來講可分為“包過濾型”和“應用代理型”兩大類。前者以以色列的Checkpoint防火墻和美國Cisco公司的PIX防火墻為代表,后者以美國NAI公司的Gauntlet防火墻為代表。 (1). 包過濾(Packet filtering)型 包過濾型防火墻工作在OSI網絡參考模型的網絡層和傳輸層,它根據數據包頭源地址,目的地址、端口號和協議類型等標志確定是否允許通過

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論