题
当使用白框测试方法称为多条件覆盖范围时,我们是否采用所有条件陈述,还是只有多个条件的陈述?现在也许是名字中的线索,但我不确定。
因此,如果我有以下方法
void someMethod()
{
if(a && b && (c || (d && e)) ) //Conditional A
{
}
if(z && q) // Conditional B
{
}
}
我是为“有条件a”生成真相表,还是也要做有条件的b?
谢谢,
解决方案
我可能在这里缺少一些东西,但是您在问题中编写代码的方式是,条件A和B完全独立。因此,除非您测试两个条件,否则您将不会涵盖所有代码。
其他提示
我在多个条件覆盖范围内找到了以下内容。这似乎表明,顾名思义,多种条件覆盖范围仅适用于具有多个语句的条件。
因此,对于以下条件:
if ((a>0)&&(b<=4)&&(c>0))
我们创建以下
Test Case a > 0 b <= 4 c > 0
MCC1 F F F
MCC2 F F T
MCC3 F T F
MCC4 F T T
MCC5 T F F
MCC6 T F T
MCC7 T T F
MCC8 T T T
不隶属于 StackOverflow