判定覆盖(Decision coverage)

上一篇 / 下一篇  2008-12-03 15:18:35 / 个人分类:White-Box Testing

比“语句覆盖”稍强的覆盖标准是“判定覆盖(或称分支覆盖)标准含义:执行足够的测试用例,使得程序中的每一个分支至少都通过一次。

6.4的程序,如果设计两个例子,使它们能通过路径aceabd,或者通过路径acdabe,就可达到“判定覆盖”标准,为此,可以选择输入数据为:

A=3B=0X=1(沿路径acd执行);       A=2B=1X=3(沿路径abe执行)

程序中含有判定的语句包括IF-THEN-ELSEDO-WHILEREPEAT-UNTIL等,除了双值的判定语句外,还有多值的判定语句,如PASCAL中的CASE语句、FORTRAN中带有三个分支的IF语句等。所以“判定覆盖”更一般的含义是:使得每一个判定获得每一种可能的结果。

“判定覆盖”比“语句覆盖”严格,因为如果每个分支都执行过了,则每个语句也就执行过了。但是,“判定覆盖”还是很不够的,例如上面两个测试用例未能检查沿着路径abd执行时,X的值是否保持不变。


TAG: Coverage 判定覆盖 decision

51test_pp的个人空间 引用 删除 51test_pp   /   2013-07-10 21:42:17
临时抱佛脚 引用 删除 qiaoj2007   /   2011-01-27 15:31:42
5
 

评分:0

我来说两句

日历

« 2024-05-01  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 47895
  • 日志数: 80
  • 建立时间: 2008-10-27
  • 更新时间: 2009-07-17

RSS订阅

Open Toolbar