一、白盒測試:白盒測試也稱為結構測試,主要用於檢測軟體編碼過程中的錯誤。程式設計師的程式設計經驗、對程式設計軟體的掌握程度、工作狀態等因素都會影響到程式設計質量,導致**錯誤。
白盒測試的方法:
強度由低到高:
語句覆蓋:所有的「語句」都要覆蓋一遍。就是設計若干個測試用例,執行被測程式,使得每乙個執行語句至少執行一次。
判定覆蓋:包含語句覆蓋,每個判斷t、f各一次。使設計的測試用例保證程式中每個判斷的每個取值分支至少經歷一次。
條件覆蓋:包含語句覆蓋,每個條件t、f各一次是指選擇足夠的測試用例,使得執行這些測試用例時,判定中每個條件的所有可能結果至少出現一次,但未必能覆蓋全部分支。
判定條件覆蓋:包含判定覆蓋、條件覆蓋。說白了就是我們設計的測試用例可以使得判斷中每個條件所有的可能取值至少執行一次(條件覆蓋),同時每個判斷本身所有的結果,也要至少執行一次(判定覆蓋)。不難發現判定條件覆蓋同時滿足判定覆蓋和條件覆蓋,彌補了兩者各自的不足,但是判定條件覆蓋並未考慮條件的組合情況。
條件組合覆蓋:每個條件的每種組合。在白盒測試法中,選擇足夠的測試用例,使所有判定中各條件判斷結果的所有組合至少出現一次,滿足這種覆蓋標準成為條件組合覆蓋。意思是說我們設計的測試用例應該使得每個判定中的各個條件的各種可能組合都至少出現一次。顯然,滿足條件組合覆蓋的測試用例一定是滿足判定覆蓋、條件覆蓋和判定條件覆蓋的。
路徑覆蓋:所有路徑至少執行一次。
語句覆蓋是在所有的測試方法中一種最弱的覆蓋
判定覆蓋和條件覆蓋比語句覆蓋強,滿足判定條件覆蓋的測試用例一定滿足語句覆蓋、判定覆蓋、條件覆蓋
路徑覆蓋是一種比較強的覆蓋,但未必考慮判定條件結果的組合,並不能代替條件覆蓋和條件組合覆蓋。
必考慮判定條件結果的組合,並不能代替條件覆蓋和條件組合覆蓋。
二、黑盒測試:黑盒測試又稱為功能測試,主要檢測軟體的每乙個功能是否能夠正常使用。在測試過程中,將程式看成不能開啟的黑盒子,不考慮程式內部結構和特性的基礎上通過程式介面進行測試,檢查程式功能是否按照設計需求以及說明書的規定能夠正常開啟使用。
黑盒測試的方法:
三、黑盒測試和白盒測試的優缺點
測試方法
黑盒測試
白盒測試
優點1、比較簡單,不需要了解程式內部的**以及實現2、在使用者的角度出發,能很容易的知到使用者會用到哪些功能,會遇到哪些問題3、在做軟體自動化測試時較為方便
1、幫助軟體測試人員增大**的覆蓋率2、提高**的質量、發現**中隱藏的問題
缺點1、不可能覆蓋所有的**,覆蓋率比較低,大概只能到達總**量的30%2、自動化測試的復用性較低
1、程式執行會有很多不同的路徑,不可能測試所有的執行路徑2、測試基於**,只能測試開發人員做的對不對,而不能知道設計的功能需求是否正確。3、系統龐大,測試開銷會非常大
軟體測試 黑盒白盒測試的方法
黑盒白盒的區別不用說了,這裡介紹黑盒白盒測試所用的方法,都是關於測試樣例的設計 白盒測試 語句覆蓋 每條語句至少執行一次 判定覆蓋 每一判定的每個分支至少執行一次 條件覆蓋 每一判定中的每個條件,分別按 真 假 至少各執行一次 判定 條件覆蓋 同時滿足判定覆蓋和條件覆蓋的要求 條件組合覆蓋 求出判定...
軟體測試之黑盒測試 白盒測試
靜態測試 不用執行程式的測試,包括 檢查 靜態結構分析 質量度量 文件測試等等,它可以由人工進行,充分發揮人的邏輯思維優勢,也可以借助軟體工具 fxcop 自動進行。動態測試 需要執行 通過執行程式找到問題,包括功能確認與介面測試 覆蓋率分析 效能分析 記憶體分析等。白盒測試中的邏輯覆蓋包括語句覆蓋...
黑盒測試 白盒測試
黑盒測試 black box testing,又稱為功能測試或資料驅動測試 是把測試物件看作乙個黑盒子。利用黑盒測試法進行動態測試時,需要測試軟體產品的功能,不需測試軟體產品的內部結構和處理過程。黑盒測試注重於測試軟體的功能性需求,也即黑盒測試使軟體工程師派生出執行程式所有功能需求的輸入條件。黑盒測...