詳述白盒測試的邏輯覆蓋的路徑覆蓋及其優缺點

2021-10-05 08:15:39 字數 651 閱讀 8025

執行所測程式,要覆蓋程式中所有可能的路徑。

可以對程式進行徹底的測試,比語句覆蓋、條件覆蓋、判定覆蓋、條件判定覆蓋及條件組合覆蓋的覆蓋面都廣。

路徑覆蓋率=至少被執行過一次的路徑數/總的路徑數

eg:**案例裡面共有4條路徑,設計測試用例執行了3條路徑,則路徑覆蓋率就為3/4=75%。

以下圖為例:

依照上圖:我們要想覆蓋率為百分之百

判定條件如下:

if(x>0&&y>0)判定:記為p1

if(magic<0)判定:記為p2

x>0:記為c1

y>0:記為c2

magic<0:記為c3

測試用例設計:

從上可知:執行了a-b-d-f, a-c-d-f, a-b-e-f, a-c-e-f四條路徑路徑,路徑覆蓋率百分之百。

優點:路徑覆蓋面非常之廣。

缺點:由於路徑覆蓋需要對所有可能的路徑進行測試(包括迴圈、條件組合、分支選擇等),那麼需要設計大量、複雜的測試用例,使得工作量呈指數級增長。而在有些情況下,一些執行路徑是不可能被執行的。

參考 :

白盒測試的邏輯覆蓋法

邏輯覆蓋是以程式內部的邏輯結構為基礎的設計測試用例的技術。它屬白盒測試。邏輯覆蓋包括語句覆蓋 判定覆蓋 條件覆蓋 判定 條件覆蓋 條件組合覆蓋和路徑覆蓋。六種覆蓋標準發現錯誤的能力呈由弱到強的變化 1.語句覆蓋 2.判定覆蓋 3.條件覆蓋 4.判定 條件覆蓋 5.條件組合覆蓋 6.路徑覆蓋 對上述6...

白盒測試邏輯覆蓋法

看新定的測試覆蓋率標準,有點暈。1 語句覆蓋率達到100 2 分支覆蓋率不低於70 開始覺得,這兩個限制有點矛盾,語句覆蓋率都達到100 了,分支覆蓋率還沒達到100 答案 是。舉個例子說明 if a and b then action1 if c or d then action2 就拿這個來說,...

白盒測試 邏輯覆蓋法

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