大家都熟知軟件測試的方法分為黑盒測試和白盒測試,其中的黑盒測試是功能測試比較簡單這里就不再贅述。下面主要區(qū)分白盒測試中的幾種比較容易弄混的測試方法。
軟件測試中最常用的是邏輯覆蓋法,所有可用的方法按覆蓋程度從弱到強(qiáng)的順序分為:語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋、路徑覆蓋。
只要搞清楚本質(zhì),其實(shí)這幾種的測試方法就沒那么難了。如下圖
這張圖有兩個判斷語句分支形成4條路徑。分析各種覆蓋所能覆蓋的路徑條數(shù)。
語句覆蓋:每一條語句 都要執(zhí)行一遍例如:ace路徑執(zhí)行的語句即可滿足條件。
判定覆蓋: 這個判定的T和F都要執(zhí)行一遍
也要真假都執(zhí)行一遍例如:沿著路徑ace和abd兩條路徑執(zhí)行則滿足條件
條件覆蓋:這個要比判定覆蓋的粒度更小一些,前者的粒度是判定中各種條件,例如針對這個判定的所有條件有A>1,A<=1,,B=0、B≠0下面的判定同樣有四個條件。
判定條件覆蓋:是既滿足判定覆蓋有滿足條件覆蓋的測試用例。
條件組合覆蓋:各種條件的組合,也就是這四個條件各自真假取到一次,一共八個取值。
路徑覆蓋:這個覆蓋程度最高,可以測試到所有的路徑。ace、abe、abd、acd
以上幾種覆蓋的覆蓋程度是遞增的。應(yīng)該著重區(qū)分的是條件覆蓋和判定覆蓋的異同點(diǎn),這個已經(jīng)給你在條件覆蓋中重點(diǎn)說明。
初學(xué)者,有不當(dāng)之處,歡迎指出。