黑盒白盒測試的區別

一.黑盒測試(Black-box Testing)

黑盒測試也稱功能測試,測試中把被測的軟件當成一個黑盒子,不關心盒子的內部結構是什麼,只關心軟件的輸入數據與輸出數據。

不看軟件代碼,只對功能進行測試
對軟件進行操作,觀察結果是否和我們想象的一致

在這裏插入圖片描述
黑盒,顧名思義就是:把測試對象看作一個不能打開的黑盒子。測試時,測試人員完全不用考慮盒子裏面的邏輯結構和具體運作,只依據程序的需求規格說明書,檢查程序的功能是否符合它的功能說明,檢驗輸出結果對不對。

二.白盒測試(White-box Testing)

白盒測試是基於代碼的測試。白盒指的打開盒子,去研究裏面的源代碼
和程序結果。接口測試也是白盒測試的是一種 。

對代碼進行測試,對代碼裏面的的接口,數據結構,邊界值,路徑覆蓋,錯誤處理等等內容進行測試

在這裏插入圖片描述
與黑盒恰恰相反,這種方法是把測試對象看作一個打開的透明盒子。測試時,測試人員會利用程序內部的邏輯結構及有關信息,通過在不同點檢查程序狀態,檢驗程序中的每條通路是否都能按預定要求進行正確工作。

三.區別

黑盒測試和白盒測試,二者最大的區別應該就是測試時關注的對象不一樣。

黑盒測試主要針對的是程序所展現給用戶的功能,白盒測試主要針對的是程序代碼邏輯,簡單的說,就是前者測試最終展示功能,後者測試後臺程序的代碼邏輯。

測試方法不一樣
黑盒測試的測試方法有:等價類劃分、邊界值分析法、錯誤分析法、因果圖法
白盒測試的測試方法有:邏輯覆蓋法、基本路徑測試法、代碼檢查法、程序變異、靜態結構分析法、靜態質量度量法、符號測試法、

四.優缺點

(1)黑盒

優點:
1.對於較大的代碼單元來說,黑盒測試比白盒測試效率更高。
2.測試人員不需要了解細節,包括特定的編程語言。
3.測試人員和開發人員是彼此獨立的。
4.從用戶的角度測試,很容易被理解和接受。

缺點:
1.很多測試路徑沒有被測試到。
2.不能直接對特定程序段進行測試,而該程序段可能隱藏很多錯誤。
3.大部分和研究相關的測試都是直接針對白盒測試的。


(2)白盒

優點:
1.幫助軟件測試人員增大代碼的覆蓋率,提高代碼的質量,發現代碼中隱藏的問題。
2.能相對來說了解軟件的具體實現代碼
3.對代碼的測試來說相對比較好

缺點:
1.程序運行會有很多不同的路徑,不可能測試所有的運行路徑;
2.測試基於代碼,只能測試開發人 員寫的對不對,而不能知道研發人員設計的正確與否,可能會漏掉一些功能需求;
3.系統龐大時,測試開銷 會非常大。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章