1. 程式人生 > 其它 >軟體測試中條件覆蓋,路徑覆蓋,語句覆蓋,分支覆蓋的區別

軟體測試中條件覆蓋,路徑覆蓋,語句覆蓋,分支覆蓋的區別

舉個例子吧
if A and B then Action1
if C or D then Action2

語句覆蓋最弱,只需要讓程式中的語句都執行一遍即可 。上例中只需設計測試用例使得A=true B=true C=true 即可。

分支覆蓋又稱判定覆蓋:使得程式中每個判斷的取真分支和取假分支至少經歷一次,即判斷的真假均曾被滿足。上例需要設計測試用例使其分別滿足下列條件即可(1)A=true,B=true,C=true,D=false(2)A=true,B=false,C=false,D=false。

條件覆蓋:要使得每個判斷中的每個條件的可能取值至少滿足一次。上例中第一個判斷應考慮到A=true,A=false,B=true,B=false第二個判斷應考慮到C=true,C=false,D=true,D=false,所以上例中可以設計測試用例滿足下列條件(1)A=true,B=true,C=true,D=true(2)A=false,B=false,C=false,D=false。

路徑覆蓋:要求覆蓋程式中所有可能的路徑。所以可以設計測試用例滿足下列條件(1)A=true,B=true,C=true,D=true(2)A=false,B=false,C=false,D=false(3)A=true,B=true,C=false,D=false(4)A=false,B=false,C=true,D=true。

不論那種覆蓋方法,都不能保證程式的正確性

轉載:https://www.cnblogs.com/ganmk/archive/2008/11/07/1328585.html

hello world!!!