黑盒測試和白盒測試

一、黑盒測試和白盒測試

 黑盒測試:已知產品的功能設計規格,可以進行測試證明每個實現了的功能是否符合要求。

白盒測試:已知產品的內部工作過程,可以進行測試證明每種內部操作是否符合設計規格要求,所有內部成分是否經過檢查。

 1. 第一認識:

  黑盒測試

測試特點:測試功能;

測試依據:需求規格說明書

方法舉例:等價類劃分、邊界值測試

優點:能站在用戶的立場上進行測試

缺點:不能測試程序內部特定部位,如程序有誤,則無法發現。

白盒測試

測試特點:測試程序接口與結構

測試依據:軟件程序

方法舉例:邏輯覆蓋

優點:對程序內部特定部位進行覆蓋測試。

缺點:無法檢驗程序外部特性。

 2.第二認識:

  黑盒測試把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下,針對“軟件界面”和”軟件功能“進行測試,只檢查功能是否符合需求規格說明書能正常使用。因此黑盒測試又叫功能測試或數據驅動測試。

  白盒測試是對軟件的過程性細節做細緻的檢查。這種方法是把測試對象看作一個打開的盒子,他允許測試人員利用程序內部的邏輯結構及有關信息,設計或選擇測試用例,對程序所有邏輯路徑進行測試。通過在不同點檢查程序狀態,確定實際狀態是否與預期的狀態一致。因此白盒測試又稱爲”結構測試“或”邏輯驅動測試“。白盒測試是按照程序內部的結構來測試程序,通過測試檢驗產品內部動作是否按照設計規格說明書的要求正常進行,檢驗程序中的每條通道是否都按照規定正常工作。

  3.第三認識:

  黑盒測試主要是爲了發現以下錯誤:

 (1)是否有不正確或者遺漏了的功能;

 (2)在接口上,輸入能否正確的接受?能否輸出正確的結果?

 (3)是否有數據結構錯誤或外部信息(例如數據庫文件)訪問錯誤?

 (4)性能上是否能夠滿足要求?

 (5)是否有初始化或終止性錯誤?

黑盒的測試用例技術設計有三種:  邊界值分析、等價類劃分、錯誤推測法。

 白盒測試主要是想對程序模塊進行以下檢查:

 (1)對程序模塊的所有獨立的執行路徑至少測試一遍;

 (2)對所有的邏輯判定,取”真“與”假“的兩種情況都能至少測一遍;

 (3)在循環的邊界和運行的界限內執行循環體;

 (4)測試內部數據結構的有效性,等等;

 (5)靜態白盒測試  :即代碼審查,正式審查和檢驗設計和程序代碼;

 (6)動態白盒測試 利用查看代碼功能和實現方式得到的信息來設計和執行測試,也叫結構測試;

 白盒的測試用例技術包括邏輯覆蓋和基本路徑測試。

  邏輯覆蓋:是以程序內在邏輯結構爲基礎的測試用例設計技術,這一方法要求測試人員對程序的邏輯結構有清楚的瞭解。

 基本路徑測試:在程序控制流程圖的基礎上,通過分析控制構造的環路複雜性,導出基本可執行路徑集合,從而設計測試用例。

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