? ? ? ?? ? ? ?
?
1、白盒測試概念
白盒測試又稱為結構測試,主要是根據程序的內部結構和邏輯來設計測試用例,然后對程序的路徑和過程進行測試,檢查是否滿足設計的需要。
2、白盒測試常用的技術介紹
白盒測試常用的技術有邏輯覆蓋、循環覆蓋、基本路徑測試。
2.1 邏輯覆蓋
邏輯覆蓋考察用測試數據運行被檢測程序時,對程序邏輯的覆蓋程度。常用的邏輯覆蓋標準語句:判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋、路徑覆蓋。
語句覆蓋:主要是指選擇足夠的測試數據,使得被測試程序中每條語句至少執行一次。一般情況下語句覆蓋對程序執行邏輯覆蓋率很低,屬于弱邏輯覆蓋。
判定覆蓋:主要是指設計足夠的測試用例,,使得程序中每個判定表達式至少獲得一次true或false。判斷覆蓋也成為分支覆蓋。
條件覆蓋:條件覆蓋是指構造一組測試用例,使得每一個判定語句中每個邏輯條件的各種可能的值,至少滿足一次。
判定/條件覆蓋:主要是指設定足夠的測試用例,使得判定語句中每個條件的所有可能取值,至少出現一次,,并且每個判定本身的判斷結果至少也出現一次。
條件組合覆蓋:主要是指設計足夠的用例,使得每個判定條件的各種可能的組合都至少出現一次。滿足條件組合覆蓋的一定滿足判定覆蓋、條件覆蓋、判定/條件覆蓋。
路徑覆蓋:主要是指覆蓋被測試程序中所有可能的路徑。
2.2 循環覆蓋
循環覆蓋就是指執行足夠的測試用例,使得循環中的每個條件都得到驗證。
2.3 基本路徑測試
基本路徑測試是在程序控制流圖的基礎上,通過分析控制流圖的環路復雜性,導出基本可執行路徑集合,從而設計相應的測試用例。設計出的測試用例要保證在測試中程序的每一條獨立路徑都執行過。
3、白盒測試的原則
程序模塊中所有獨立路徑至少執行一次
在所有邏輯判斷中,取trueh和false的兩種情況至少都執行一次。
每個循環都應在邊界條件和一般條件下各執行一次。
測試程序內部數據結構的有效性
4、白盒測試和黑盒測試優缺點
?
測試類型 | 優點 | 缺點 |
白盒測試 | 可以幫助軟件測試人員增大代碼的覆蓋率。?提升代碼的質量,發現代碼中隱藏的問題 | 1、程序運行會有很多不同的路徑,不可能測試所有的運行路徑 2、測試基于代碼,只能測試開發人員做的對不對,而不能知道設計是否正確,可能會漏掉一些功能需求 3、系統龐大時,測試開銷會非常大。 |
黑盒測試 | 1、比較簡單,不需要了解程序的內部的代碼及實現 2、與軟件的內部實現無關 3、從用戶的角度出發,能很容易的知道用戶會用到哪些功能,會遇到哪些問題 4、基于軟件開發文檔,所以也能知道軟件實現了文檔中的哪些功能 5、在做軟件自動化測試時較為方便 ? | 1、不可能覆蓋所有的代碼, 覆蓋率較低,一般只能達到總代碼量的30% 2、自動化測試的復用性較低。 ? |
?
IT技術分享社區
個人博客網站:https://programmerblog.xyz
文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基礎知識硬件:斷路器、接觸器、繼電器基礎知識