1. 程式人生 > >黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系

黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系

角色 同時 驗收 center 調試 需求 lan 說明書 錯誤

黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系

  接下來為大家細心講述一下各種測試應用的環境及作用。

一、測試環境和角色

黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試 :

這些測試的範圍正好是逐步遞增的關系,但是測試的人員角色是不同。

黑盒測試、白盒測試、單元測試:開發人員分在不同的開發階段要做的事情

黑盒測試、集成測試、系統測試:測試人員在測試周期內級層做的工作

驗收測試:一般是在用戶方做的工作

二、根據不同的範圍

測試可以分為單元測試、集成測試、系統測試和驗收測試。

體現了測試由小到大、又內至外、循序漸進的測試過程和分而治之的思想。

三、測試的功能

1.單元測試 粒度最小,一般由開發小組采用白盒方式來測試,主要測試單元是否符合“設計”。

單元測試(unit testing),是指對軟件中的最小可測試單元進行檢查和驗證。對於單元測試中單元的含義,一般來說,要根據實際情況去判定其具體含義,如C語言中單元指一個函數,Java裏單元指一個類,圖形化的軟件中可以指一個窗口或一個菜單等。總的來說,單元就是人為規定的最小的被測功能模塊。單元測試是在軟件開發過程中要進行的最低級別的測試活動,軟件的獨立單元將在與程序的其他部分相隔離的情況下進行測試。

2.集成測試 界於單元測試和系統測試之間,起到“橋梁作用”,一般由開發小組采用白盒加黑盒的方式來測試,既驗證“設計”,又驗證“需求”。 主要用來測試模塊與模塊之間的接口,同時還要測試一些主要業務功能。集成測試(也叫組裝測試,聯合測試)是單元測試的邏輯擴展。它最簡單的形式是:把兩個已經測試過的單元組合成一個組件,測試它們之間的接口。從這一層意義上講,組件是指多個單元的集成聚合。在現實方案中,許多單元組合成組件,而這些組件又聚合為程序的更大部分。方法是測試片段的組合,並最終擴展成進程,將模塊與其他組的模塊一起測試。最後,將構成進程的所有模塊一起測試。此外,如果程序由多個進程組成,應該成對測試它們,而不是同時測試所有

集成測試進程。

3.系統測試 粒度最大,一般由獨立測試小組采用黑盒方式來測試,主要測試系統是否符合“需求規格說明書”。在經過以上各階段測試確認之後,把系統完整地模擬客戶環境來進行的測試。系統測試是將已經確認的軟件、計算機硬件、外設、網絡等其他元素結合在一起,進行信息系統的各種組裝測試和確認測試,其目的是通過與系統的需求相比較,發現所開發的系統與用戶需求不符或矛盾的地方,從而提出更加完善的方案.。它的的任務是盡可能徹底地檢查出程序中的錯誤,提高軟件系統的可靠性,其目的是檢驗系統"做得怎樣?"。這階段又可分為三個步驟:模塊測試,測試每個模塊的程序是否有錯誤;組裝測試,測試模塊之間的接口是否正確;確認測試,測試整個軟件系統是否滿足用戶功能和性能的要求。該階段結束應交付測試報告,說明測試數據的選擇,測試用例以及測試結果是否符合預期結果。測試發現問題之後要經過調試找出錯誤原因和位置,然後進行改正。是基於系統整體需求說明書的黑盒類測試,應覆蓋系統所有聯合的部件。系統測試是針對整個產品系統進行的測試,目的是驗證系統是否滿足了需求規格的定義,找出與需求規格不相符合或與之矛盾的地方。

系統測試的對象不僅僅包括需要測試的產品系統的軟件,還要包含軟件所依賴的硬件、外設甚至包括某些數據、某些支持軟件及其接口等。因此,必須將系統中的軟件與各種依賴的資源結合起來,在系統實際運行環境下來進行測試

4.驗收測試與系統測試相似,主要區別是測試人員不同,驗收測試由用戶執行。

5.黑盒測試:不考慮程序內部結構和邏輯結構,主要是用來測試系統的功能是否滿足需求規格說明書。 一般會有一個輸入值,一個輸入值,和期望值做比較。黑盒測試也稱功能測試,它是通過測試來檢測 每個功能是否都能正常使用。在測試中,把程序看作一個不能打開的黑盒子,在完全不考慮程序 內部結構和內部特性的情況下,在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數據而產生正確的輸出信息。黑盒測試著眼於程序外部結構,不考慮內部邏輯結構,主要針對軟件界面和軟件功能進行測試。

6.白盒測試:主要應用在單元測試階段,主要是對代碼級的測試,針對程序內部邏輯構,測試手段有:語句覆蓋、判定覆蓋、條件覆蓋、路徑覆蓋、條件組合覆蓋。白盒測試也稱結構測試或邏輯驅動測試,它是按照程序內部的結構測試程序,通過測試來檢測產品內部動作是否按照設計規格說明書的規定正常進行,檢驗程序中的每條通路是否都能按預定要求正確工作。 這一方法是把測試對象看作一個打開的盒子,測試人員依據程序內部邏輯結構相關信息,設計或選擇測試用例,對程序所有邏輯路徑進行測試,通過在不同點檢查程序的狀態,確定實際的狀態是否與預期的狀態一致。

——如有不對的地方,非常歡迎給予指導!

——【感謝】資料來源於http://www.cnblogs.com/lisa090818/p/4236079.html

黑盒測試、白盒測試、單元測試、集成測試、系統測試、驗收測試的區別與聯系