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


舉個例子吧  
  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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM