1. 程式人生 > >軟體測試的四個階段,單元測試、整合測試、系統測試、驗收測試

軟體測試的四個階段,單元測試、整合測試、系統測試、驗收測試

軟體測試的物件包括軟體需求、概要設計、詳細設計、軟體執行環境、可執行程式和軟體原始碼等。軟體測試包括質量、人員、資源、技術和流程五大要素,以及測試覆蓋率和測試效率兩個目標。

軟體測試一般分為4個階段:單元測試、整合測試、系統測試、驗收測試。

一、單元測試 
單元測試是對軟體中的最小可驗證單元進行檢查和驗證。比如對Java中的類和方法的測試。

測試原則: 
1、儘可能保證測試用例相互獨立(測試用例中不能直接呼叫其他類的方法,而應在測試用例中重寫模擬方法); 
2、此階段一般由軟體的開發人員來實施,用以檢驗所開發的程式碼功能符合自己的設計要求。

單元測試的好處: 
1、儘早的發現缺陷; 
2、利於重構; 
3、簡化整合; 
4、文件; 
5、用於設計。

單元測試的不足: 
1、不可能覆蓋所有的執行路徑,所以不可能保證捕捉到所有路徑的錯誤; 
2、每行程式碼需要3~5行程式碼進行單元測試,存在投入與產出的平衡。

二、整合測試 
整合測試是在單元測試的基礎上,把軟體單元按照軟體概要設計規格說明的規格要求,組裝成模組、子系統或系統的過程中各部分工作是否達到或實現相應技術指標及要求。

整合測試包括BigBang、自頂向下、自底向上、核心系統整合、高頻整合。

三、系統測試 
將經過整合測試的軟體,作為計算機系統的一部分,與系統中其他部分結合起來,在實際執行環境下進行一系列嚴格有效的測試,以發現軟體潛在的問題,保證系統的正常執行。

整合測試和系統測試之間的比較: 
1、測試內容:整合測試是測試各個單元模組之間的介面,系統測試是測試整個系統的功能和效能; 
2、測試角度:整合測試偏重於技術的角度進行測試,系統測試是偏重於業務的角度進行測試。

四、驗收測試 
也稱交付測試,是針對使用者需求、業務流程進行的正式的測試,以確定系統是否滿足驗收標準,由使用者、客戶或其他授權機構決定是否接受系統。

驗收測試包括alpha測試和beta測試,alpha測試是由開發者進行的軟體測試,beta測試是由使用者在脫離開發環境下進行的軟體測試。