51Testing软件测试论坛

标题: 分支,条件,判定如何区别! [打印本页]

作者: peiping790809    时间: 2006-5-25 17:43
标题: 分支,条件,判定如何区别!
分支是不是就是if {} else{}
判定和条件是不是一回事?
作者: empire    时间: 2006-5-25 18:18
在编程时这三个是一样的,但在白盒测试中如用他们来考虑逻辑覆盖是有所不同的,其中分支覆盖又叫判定覆盖所以二着是相同的,但与条件覆盖不同!
“条件覆盖”的含义是:执行足够的测试用例,使得判定中的每个条件获得各种可能的结果。     
“判定覆盖”(或称分支覆盖):使得程序中的每一个分支至少都通过一次。
例如有程序:
if (a>0&&b<2)
    x=x+1;
else
   x=x-1;
很明显其有两条分支,在测试时若考虑分支覆盖,则须使程序的两个分支都能被执行到;
若是考虑条件覆盖则须使 a>0 为真和假的情况都能出现,也要使b<2为真和假的情况都能出现;
作者: ilovejolly    时间: 2006-5-25 20:00
http://www.itisedu.com/phrase/200603101705575.html
作者: archonwang    时间: 2006-5-29 15:20
请恶补软件工程基础知识。在《软件工程》书中流程图一节有较详细描述。
作者: Nio    时间: 2006-5-30 17:05
楼主,没学过编程吧?看几本编程的书吧
作者: jihuli5    时间: 2006-6-2 10:02
分支就是一个判断条件的2个或者多个走向,比如if()----else------,两个-----都是表示分支,条件就是if()括号里面的那条语句,比如if(A>1&&B>2),这里有四个条件,A>1为真、假两个条件和B>2为真、假两个条件。分支覆盖也叫判定覆盖。
作者: 张翔0325    时间: 2007-7-30 20:47
就测试来说:
判定覆盖 比语句覆盖稍强的覆盖标准是判定覆盖(Decision Coverage)。判定覆盖的含义是:设计足够的测试用例,使得程序中的每个判定至少都获得一次“真值”或“假值”,或者说使得程序中的每一个取“真”分支和取“假”分支至少经历一次,因此判定覆盖又称为分支覆盖。
条件覆盖 在设计程序中,一个判定语句是由多个条件组合而成的复合判定。为了更彻底地实现逻辑覆盖,可以采用条件覆盖(Condition Coverage)的标准。条件覆盖的含义是:构造一组测试用例,使得每一判定语句中每个逻辑条件的可能值至少满足一次。
作者: 小老虎菲菲    时间: 2007-7-31 16:04
说下我的理解把,我把每个程序都画成流程图,凡是有判断的(T和F)的就是条件.算条件就是算走过的T和F的数量
判定与条件不一样,判定是叫判定条件也叫分支条件,而条件就是条件
分支是在T和F所走的路径
作者: 119139107    时间: 2007-7-31 16:48
感谢个位的回帖  
又学习点新知识
受益匪浅
学习中。。。。。。。
作者: DERYCK    时间: 2007-8-1 23:47
判定覆盖的含:设计足够的测试用例,使得程序中的每个判定至少都获得一次“真值”或“假值”,或者说使得程序中的每一个取“真”分支和取“假”分支至少经历一次,因此判定覆盖又称为分支覆盖。
条件覆盖:构造一组测试用例,使得每一判定语句中每个逻辑条件的可能值至少满足一次。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2