白盒測試的測試方法

2021-10-05 23:23:02 字數 1492 閱讀 5196

邏輯覆蓋法是白盒測試最常用的測試方法,基本包括語句覆蓋,判定覆蓋,條件覆蓋,條件判定覆蓋,條件組合覆蓋,路徑覆蓋6種。

對程式的邏輯覆蓋很少,只關心判定表示式的值,是很弱的邏輯覆蓋標準。

•【基本思想】:設計若干測試用例,執行被測程式,使程式中每個可執行語句至少執行一次。

•【優點】:檢查所有語句、**覆蓋率高

•【缺點】:無法檢查出條件、迴圈語句的錯誤

判定覆蓋比語句覆蓋強一些,能發現一些語句覆蓋無法發現的問題。但是往往一些判定條件都是由多個邏輯條件組合而成的,進行分支判斷時相當於對整個組合的最終結果進行判斷,這樣就會忽略每個條件的取值情況,導致遺漏部分測試路徑。

•【基本思想】:設計若干測試用例,執行被測程式,使得程式中每個判斷的取真分支和取假分支至少經歷一次,即判斷真假值均曾被滿足。

•【優點】:判定覆蓋具有比語句覆蓋更強的測試能力。

•【缺點】:往往大部分的判定語句是由多個邏輯條件組合而成,若僅僅判斷其整個最終結果,而忽略每個條件的取值情況,必然會遺漏部分測試路徑,判定覆蓋仍是較弱的邏輯覆蓋

通常而言條件覆蓋比判定覆蓋強,因為條件覆蓋使得判定中的每乙個條件都取到了不同的結果,這一點判定覆蓋則無法保證。但條件覆蓋也有缺陷,因為它只能保證每個條件都取到了不同結果,但沒有考慮到判定結果,因此有時候條件覆蓋並不能保證判定覆蓋。

•【基本思想】:設計若干測試用例,執行被測程式以後要使每個判斷中每個條件的可能取值至少滿足一次。

•【優點】:能夠檢查所有的條件錯誤。

•【缺點】:不能保證所有的分支(判定)都能覆蓋,仍是較弱的覆蓋方式。

判定/條件覆蓋,說白了就是我們設計的測試用例可以使得判斷中每個條件所有的可能取值至少執行一次(條件覆蓋),同時每個判斷本身所有的結果也要至少執行一次(判定覆蓋)。不難發現判定條件覆蓋同時滿足判定覆蓋和條件覆蓋,彌補了兩者各自的不足,但是判定條件覆蓋並未考慮條件的組合情況。

•【基本思想】:設計足夠的測試用例,使得判斷條件中的所有條件可能至少執行一次取值,同時所有判斷的可能結果至少執行一次。

•【優點】:既考慮了每乙個條件,又考慮了每乙個分支,發現錯誤的能力強於分支覆蓋和條件覆蓋

•【缺點】:仍然不能覆蓋所有的路徑,有進一步提公升的空間

條件組合覆蓋,測試用例應該使得每個判定中的各個條件的各種可能組合都至少出現一次。顯然,滿足條件組合覆蓋的測試用例一定是滿足判定覆蓋、條件覆蓋和判定條件覆蓋的。

•【基本思想】:設計足夠的測試用例,使得所有可能的條件取值組合至少執行一次。

•【優點】:能夠檢查所有的條件錯誤

•【缺點】:不一定能使程式中的每條路徑都執行到,用例數明顯增加

路徑覆蓋,意思是說我們設計的測試用例可以覆蓋程式中所有可能的執行路徑。這種覆蓋方法可以對程式進行徹底的測試用例覆蓋,比前面講的五種方法覆蓋度都要高。

•【基本思想】:要求設計足夠多的測試用例,使得程式中所有的路徑都至少執行一次 。

•【優點】:這種測試方法可以對程式進行徹底的測試,比前面五種的覆蓋面都廣。

•【缺點】:需要設計大量、複雜的測試用例,使得工作量呈指數級增長,不一定把所有的條件組合都覆蓋。

python 白盒測試 白盒測試方法

白盒測試是單元測試階段常用到的測試方法,其特點有 1 可以構成測試資料,使特定程式部分得到測試 2 有一定的充分性度量手段 3 可獲得較多工具支援 4 通常只用於單元測試。下邊通過一段 來看一下白盒測試中的邏輯覆蓋 那麼為了清晰,我們畫出乙個該程式的流程圖 1 語句覆蓋 語句覆蓋是最弱的邏輯覆蓋準則...

白盒測試方法

白盒測試方法 定義 白盒測試又稱結構測試 透明盒測試 邏輯驅動測試或基於 的測試。白盒測試是一種測試用例設計方法,盒子指的是被測試的軟體,白盒指的是盒子是可視的,你清楚盒子內部的東西以及裡面是如何運作的。白盒 法全面了解程式內部邏輯結構 對所有邏輯路徑進行測試。白盒 法是窮舉路徑測試。在使用這一方案...

白盒測試方法

白盒測試是單元測試階段常用到的測試方法,其特點有 1 可以構成測試資料,使特定程式部分得到測試 2 有一定的充分性度量手段 3 可獲得較多工具支援 4 通常只用於單元測試。下邊通過一段 來看一下白盒測試中的邏輯覆蓋 那麼為了清晰,我們畫出乙個該程式的流程圖 1 語句覆蓋 語句覆蓋是最弱的邏輯覆蓋準則...