資源描述:
《最全面的軟件測試基礎(chǔ)知識-面試不愁》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、Q:什么是軟件測試?軟件測試的Fl的是什么?A:IEEE軟件測試定義為:使用人工和口動手段來運行或測試某個系統(tǒng)的過程,其1=1的在于檢驗它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實際結(jié)果Z間的差異。該定義明確提出了軟件測試以檢驗是否滿足需求為忖標。軟件測試的U的在于發(fā)現(xiàn)錯誤;一個好的測試用例在于發(fā)現(xiàn)從前未發(fā)現(xiàn)的錯誤;一個成功的測試是發(fā)現(xiàn)了從前未發(fā)現(xiàn)的錯誤的測試。所以更為合適的定義是:測試是為發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。Q:什么是軟件缺陷?A:滿足下列五個規(guī)則Z—才稱為軟件缺陷:1)軟件未達到產(chǎn)品說明書標明的功能。2)軟件出現(xiàn)了產(chǎn)品說明書指明不會出現(xiàn)的錯誤。3)軟件功能超出產(chǎn)品說明書指明的
2、范圍。4)軟件未達到產(chǎn)品說明書雖未指出但應(yīng)該達到的FI標。5)軟件測試人員認為軟件難以理解、不易使用、運行速度緩慢,或者最終用戶認為不好。Q:什么黑盒測試?黑盒測試方法都包括哪些?A:黑盒測試意味著測試要在軟件的接口處進行。是把測試對象看做一個黑盒子,測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符介它的功能說明。因此黑盒測試又叫功能測試或數(shù)據(jù)驅(qū)動測試。黑盒測試方法包扌舌:等價類劃分、邊界值分析、因果圖分析、錯誤推測法、功能圖分析等Q:什么白盒測試?白盒測試方法包活哪些?A:白盒測試是對軟件的過程性細節(jié)做細致的檢查。是把測試對彖看做一
3、個打開的盒了,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及冇關(guān)信息,設(shè)計或選擇測試用例,対程序所冇邏輯路徑進行測試。通過在不同點檢查程序狀態(tài),確定實際狀態(tài)是否與預(yù)期的狀態(tài)一致。因此白盒測試又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試。門盒測試方法包扌乩語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋、路徑覆蓋等Q:軟件測試策略都包含哪些?A:根據(jù)軟件測試工作的測試策略,一般將軟件測試過程分為:單元測試、集成測試、系統(tǒng)測試、驗收測試四個人的階段。Q:什么是單元測試?A:單元測試是對軟件中的基本組成單位進行的測試,如一個模塊、一個過程等等。它是軟件動態(tài)測試的最基本的部分,也是最重耍的部分之一,其H
4、的是檢驗軟件基本組成單位的正確性。一個軟件單元的正確性是相對于該單元的規(guī)約(詳細設(shè)計)而言的。因此,單元測試以被測試單位的規(guī)約為基準。單-元測試的主要方法有控制流測試、數(shù)據(jù)流測試、排錯測試、分域測試等等。Q:什么是集成測試?A:集成測試是在軟件系統(tǒng)集成過程中所進行的測試,其主要冃的是檢査軟件單位Z間的接口是否正確。它根據(jù)集成測試計劃,一邊將模塊或莫他軟件單位組合成越來越人的系統(tǒng),—邊運行該系統(tǒng),以分析所組成的系統(tǒng)是否正確,各組成部分是否合拍。集成測試的策略主耍冇口頂向下和口底向上兩種。測試的熱情。測試新人最應(yīng)該具備的就是測試的熱情。因為這是一項事業(yè),一項龐人的工程。系統(tǒng)的靈魂師!Q
5、:什么是系統(tǒng)測試?A:統(tǒng)測試是對已經(jīng)集成好的軟件系統(tǒng)進行徹底的測試,以驗證軟件系統(tǒng)的止確性和性能等滿足其規(guī)約所指定的要求,檢查軟件的行為和輸出是否止確并非一項簡單的任務(wù),它被稱為測試的“先知者問題”。因此,系統(tǒng)測試應(yīng)該按照測試計劃進行,其輸入、輸出和其他動態(tài)運行行為應(yīng)該與軟件規(guī)約進行對比。軟件系統(tǒng)測試方法很多,主要有功能測試、性能測試、隨機測試等等。Q:什么是驗收測試?A:驗收測試旨在向軟件的購買者展示該軟件系統(tǒng)滿足具川戶的需求。它的測試數(shù)據(jù)通常是系統(tǒng)測試的測試數(shù)據(jù)的了集。所不同的是,驗收測試常常有軟件系統(tǒng)的購買者代表在現(xiàn)場,甚至是在軟件安裝使用的現(xiàn)場。這是軟件在投入使用之前的最后
6、測試。Q:什么是自動化測試?A:一般我們談到的自動化測試,其實是有兩種說法的,一種是TestAutomation,翻譯過來叫測試自動化,側(cè)重說明將測試用自動化設(shè)計和實現(xiàn)的過程;另外一種是AutomatedTesting/Test,翻譯過來叫自動化測試,側(cè)垂說明自動的測試軟件,可以是自動測試軟件的功能或者性能等。表面上看兩種是有區(qū)別的,但現(xiàn)在我們用的多了,在提到自動化測試時,也就不區(qū)分了,基本上代表了一個意思,即:口動化測試是通過工具(程序)來對軟件進行測試,一般不需耍人為干預(yù)或干預(yù)很少。AutomatedTesting/TestAutomation:1、Testingemployi
7、ngsoftwaretoolswhichexecutetestswithoutmanualintervention.CanbeappliedinGUI,performanee,API,etc.testing.使用自動化測試工具來進行測試,這類測試一般不需要人干預(yù),通常在GUI、性能等測試中用得較多。2*Theuseofsoftwaretocontroltheexecutionoftests,thecomparisonofactualoutcomestopredicte