軟考總計之白盒測試中的覆蓋
阿新 • • 發佈:2019-02-08
白盒測試 中的邏輯覆蓋有分為很多種,在此對其中比較有代表性的幾種覆蓋簡單總結如下:
覆蓋標準 |
概念 |
特點 |
語句覆蓋 |
選擇足夠多的測試資料,使得被測試程式中每一條語句至少執行一次 |
對程式執行邏輯的覆蓋很低。 |
判定覆蓋(分支覆蓋) |
選擇足夠的測試資料,使得被測試程式中每一個判定表示式至少獲得一次“真”值和“假”值。即程式中的每個真假分支至少都執行過一次。 |
判定覆蓋雖然把程式所有分支均覆蓋到了,但其主要對整個表示式最終取值進行度量,忽略了表示式內部取值。 |
條件覆蓋 |
條件覆蓋是指選擇足夠的測試用例,使得執行這些測試用例後,要使每個判斷中每個條件的可能取值至少滿足一次,但未必能覆蓋全部分支 |
只考慮到每個判定語句中的每個表示式,沒有考慮到各個條件分支(或者涉及不到全部分支),即不能夠滿足判定覆蓋。 |
判定/條件覆蓋 |
設計足夠的測試用例,得使判斷中每個條件的所有可能取值至少執行一次,同時每個判斷的所有可能判斷結果至少執行,即要求各個判斷的所有可能的條件取值組合至少執行一次。 |
沒有考慮單個判定對整體結果的影響,無法發現邏輯錯誤。 |
條件組合覆蓋 |
選擇足夠的測試用例,使得每個判定中條件的各種可能值的組合都至少出現一次。 |
判定語句較多時,條件組合值比較多。 |
路徑覆蓋 |
覆蓋被測試程式中所有可能的路徑。 |
覆蓋率最高的一種覆蓋技術。 |