天天看點

黑盒測試和白盒測試:

黑盒測試

  黑盒測試也稱功能測試或資料驅動測試,它是在已知産品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程式看作一個不能打開的黑盆子,在完全不考慮程式内部結構和内部特性的情況下,

測試者在程式接口進行測試,它隻檢查程式功能是否按照需求規格說明書的規定正常使用,程式是否能适當地接收輸入數鋸而産生正确的輸出資訊,并且保持外部資訊(如資料庫或檔案)的完整性。黑盒測試方法主要有等價類劃分、邊值分析、因—果圖、錯誤推測等,主要用于軟體确認測試。 “黑盒”法着眼于程式外部結構、不考慮内部邏輯結構、針對軟體界面和軟體功能進行測試。“黑盒”法是窮舉輸入測試,隻有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程式中所有的錯誤。

白盒測試:

 白盒測試也稱結構測試或邏輯驅動測試,它是知道産品内部工作過程,可通過測試來檢測産品内部動作是否按照規格說明書的規定正常進行,按照程式内部的結構測試程式,檢驗程式中的每條通路是否都有能按預定要求正确工作,而不顧它的功能,白盒測試的主要方法有邏輯驅動、基路測試等,主要用于軟體驗證。“白盒”法全面了解程式内部邏輯結構、對所有邏輯路徑進行測試。“白盒”法是窮舉路徑測試。在使用這一方案時,測試者必須檢查程式的内部結構,從檢查程式的邏輯着手,得出測試資料。

黑盒測試和白盒測試

  任何工程産品(注意是任何工程産品)都可以使用以下兩種方法之一進行測試。

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

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

  軟體的黑盒測試意味着測試要在軟體的接口處進行。這種方法是把測試對象看做一個黑盒子,測試人員完全不考慮程式内部的邏輯結構和内部特性,隻依據程式的需求規格說明書,檢查程式的功能是否符合它的功能說明。是以黑盒測試又叫功能測試或資料驅動測試。黑盒測試主要是為了發現以下幾類錯誤:

1、是否有不正确或遺漏的功能?

2、在接口上,輸入是否能正确的接受?能否輸出正确的結果?

3、是否有資料結構錯誤或外部資訊(例如資料檔案)通路錯誤?

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

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

  軟體的白盒測試是對軟體的過程性細節做細緻的檢查。這種方法是把測試對象看做一個打開的盒子,它允許測試人員利用程式内部的邏輯結構及有關資訊,設計或選擇測試用例,對程式所有邏輯路徑進行測試。通過在不同點檢查程式狀态,确定實際狀态是否與預期的狀态一緻。是以白盒測試又稱為結構測試或邏輯驅動測試。白盒測試主要是想對程式子產品進行如下檢查:

1、對程式子產品的所有獨立的執行路徑至少測試一遍。

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

3、在循環的邊界和運作的界限内執行循環體。

4、測試内部資料結構的有效性,等等。

  以上事實說明,軟體測試有一個緻命的缺陷,即測試的不完全、不徹底性。由于任何程式隻能進行少量(相對于窮舉的巨大數量而言)的有限的測試,在未發現錯誤時,不能說明程式中沒有錯誤。

繼續閱讀