005 請說一說黑盒與白盒的測試方法

2022-05-05 04:09:10 字數 1385 閱讀 9144

黑盒測試:

黑盒測試也稱功能測試或資料驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用。

在測試時,把程式看作乙個不能開啟的黑盆子,在完全不考慮程式內部結構和內部特性的情況下,測試者在程式介面進行測試,它只檢查程式功能是否按照需求規格說明書的規定正常使用,程式是否能適當地接收輸入數鋸而產生正確的輸出資訊,並且保持外部資訊(如資料庫或檔案)的完整性。

「黑盒」法著眼於程式外部結構、不考慮內部邏輯結構、針對軟體介面和軟體功能進行測試。

「黑盒」法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程式中所有的錯誤。

實際上測試情況有無窮多個,因此不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。

常用的黑盒測試方法有:等價類劃分法;邊界值分析法;因果圖法;場景法;正交實驗設計法;判定表驅動分析法;錯誤推測法;功能圖分析法。

白盒測試:

白盒測試也稱為結構測試或邏輯驅動測試,是針對被測單元內部是如何進行工作的測試。

它根據程式的控制結構設計測試用例,主要用於軟體或程式驗證。

白盒測試法檢查程式內部邏輯結構,對所有的邏輯路徑進行測試,是一種窮舉路徑的測試方法,但即使每條路徑都測試過了,但仍然有可能存在錯誤。

窮舉路徑測試無法檢查出程式本身是否違反了設計規範,即程式是否是乙個錯誤的程式;窮舉路徑測試不可能檢查出程式因為遺漏路徑而出錯;窮舉路徑測試發現不了一些與資料相關的錯誤。

白盒測試需要遵循的原則有:

1. 保證乙個模組中的所有獨立路徑至少被測試一次;

2. 所有邏輯值均需要測試真(true)和假(false);兩種情況;

3. 檢查程式的內部資料結構,保證其結構的有效性;

4. 在上下邊界及可操作範圍內執行所有迴圈。

常用白盒測試方法:

靜態測試:不用執行程式的測試,包括**檢查、靜態結構分析、**質量度量、文件測試等等,它可以由人工進行,充分發揮人的邏輯思維優勢,也可以借助軟體工具(fxcop)自動進行。

動態測試:需要執行**,通過執行程式找到問題,包括功能確認與介面測試、覆蓋率分析、效能分析、記憶體分析等。

白盒測試中的邏輯覆蓋包括:語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。

六種覆蓋標準發現錯誤的能力呈由弱到強的變化:

1.語句覆蓋每條語句至少執行一次。

2.判定覆蓋每個判定的每個分支至少執行一次。

3.條件覆蓋每個判定的每個條件應取到各種可能的值。

4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。

5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。

6.路徑覆蓋使程式中每一條可能的路徑至少執行一次。

白盒測試與黑盒測試的區別

先說一下概念 任何工程產品 注意是任何工程產品 都可以使用以下兩種方法之一進行測試。1.黑盒測試 已知產品的功能設計規格,可以進行測試證明每個實現了的功能是否符合要求。2.白盒測試 已知產品的內部工作過程,可以通過測試證明每種內部操作是否符合設計規格要求,所有內部成分是否以經過檢查。區別 白盒測試 ...

黑盒測試與白盒測試的優缺點

比較簡單,不需要了解程式內部的 及實現 與軟體的內部實現無關 從使用者角度出發,能很容易的知道使用者會用到哪些功能,會遇到哪些問題 基於軟體開發文件,所以也能知道軟體實現了文件中的哪些功能 在做軟體自動化測試時較為方便 不可能覆蓋所有的 覆蓋率較低,大概只能達到總代嗎量的30 自動化測試的復用性較低...

黑盒測試與白盒測試的定義 方法

黑盒測試又叫功能測試,它主要關注被測試軟體功能的實現,而不是其內部邏輯。在黑盒測試中,被測物件的內部結構 運作情況對測試人員是不可見的。在黑盒測試裡,測試人員把被測試的軟體系統看作是乙個黑盒子,並不需要關心盒子的內部結構和內部特性,而只關注於軟體產品的輸入資料和輸出結果,從而檢查軟體產品是否符合它的...