覆蓋強度由低到高依次爲 語句覆蓋、斷定覆蓋、條件覆蓋、斷定條件覆蓋、條件組合覆蓋、路徑覆蓋spa
def baihe(a, b, c): if a > 0 and b > 0: c = c / a if a > 1 or c > 1: c = c + 1 c = b + c
首先畫出程序流程圖:code
語句覆蓋:最弱邏輯覆蓋,每條語句至少執行依次。如a=2, b=2, c=4 能夠知足I Ⅱ Ⅲ Ⅳ Ⅴ都執行blog
斷定覆蓋:又稱分支覆蓋,流程圖中每一個斷定做爲一個總體,取值真、假至少一次。如例子中有兩個斷定,則用TF、FT或 FF、TT便可(只要一個斷定的真假都有便可)class
條件覆蓋:每一個判斷中每一個條件的可能取值至少知足一次。但這種狀況下保證不了斷定覆蓋程序
條件斷定覆蓋:全部條件至少執行一次取值同時全部判斷的可能結果至少執行一次,是斷定覆蓋和條件覆蓋的交集im
路徑覆蓋:使程序中的每條組合路徑都至少執行一次。如例子中有兩個斷定,兩個斷定組合共有YN NY YY NN 4種img