A.语句
B.条件
C.判定\条件
D.路径
搜题
第1题
按要求给出下列程序的测试用例(要求写出必要的说明) (1)语句覆盖 (2)判定覆盖 (3)条件覆盖 (4)判定-条件覆盖

第2题
(1)A.路径
B.判定
C.条件
D.语句
(2)A.语句
B.条件
C.判定
D.路径
(3)A.语句
B.多重条件
C.路径
D.判定/条
第3题
A.语句
B.条件
C.判定/条件
D.路径
第4题
A.语句
B.条件
C.判定/条件
D.路径
第5题
A.语句
B.条件
C.判定/条件
D.路径
第7题
A.3 个表达式都可以为空。
B.如果第 2 个表达式为空,表示循环条件恒为真。
C.while 语句能实现的循环都能用 for 语句实现。
D.第 1 个表达式在每次循环中都要执行一次
第8题
A.3 个表达式都可以为空。
B.如果第 2 个表达式为空,表示循环条件恒为真。
C.while 语句能实现的循环都能用 for 语句实现。
D.第 1 个表达式在每次循环中都要执行一次
第9题
【题目描述】
设有一个判断语句
if(!(ch>='0'&&ch<='9'))printf(“This is not a digit!\n”);
else printf(“This is a digit!\n”);
为实现判定一条件覆盖,需要设计的测试用例个数至少应为
A) 1
B) 2
C) 3
D) 4A.
B.
C.
D.
| 【我提交的答案】: B |
| 【参考答案与解析】: 正确答案:C |
第10题
【题目描述】
设有一段程序如下: if((a==b)and((c==d)or(e==f)))do S1 else if((p==q)or(s==t))do S2 else do S3 满足判定/条件覆盖的要求下,最少的测试用例数目是______。
A.6
B.8
C.3
D.4
| 【我提交的答案】: A |
| 【参考答案与解析】: 正确答案:C |
解析:判定/条件覆盖,就是设计足够的测试用例,使得判定语句中每个条件的所有可能取值至少评价一次,同时每个判定语句本身所有可能分支也至少评价一次。
本程序一共有两个判定语句,三条路径。
若以1代表某一个条件为真,O代表为假,则对于(a==b)、(c==d)、(e==f)、(p==q)、(s==t)这五个条件,取不同的真值组合,即可设计出相应的测试用例,达到判定/条件覆盖的要求。在这里,先取(a==b)、(c==d)、(e==f) 为101,(p==q)、(s==t) 为任意值,然后取全部五个条件为010 11和010 00,即能达到判定/条件覆盖的要求。
【我的疑问】
在C语言的逻辑与运算中,“”左边为0则不看右边运算;在其逻辑或运算中 “||”左边为1不看右边~那么其条件覆盖会不会有影响?例如:当条件(a==b)为0时,后面的条件((c==d)or(e==f))还会判断么,不判断的话,还算条件覆盖么。
警告:系统检测到您的账号存在安全风险
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!