问题
单项选择题
某程序流程图如图11-6所示。其中A、B、C均为二进制数,X、Y、Z的初值均为0,如果对此流程进行多重覆盖测试,预期的结果为X=1、Y=0、Z=1,正确的测试用例是 (7) ,请从以下备选项中选择正确的测试用例。
答案
参考答案:A
解析:本问题考查对多重覆盖的了解。
逻辑覆盖主要用于模块的测试,它以程序内部的逻辑结构为基础,考虑测试数据执行(覆盖)程序的逻辑程度。根据覆盖情况的不同,逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、多重覆盖、路径覆盖、循环覆盖。
多重覆盖(Multjob Coverage)就是设计多个测试用例,使得各判断表达式中的条件的各种组合至少执行一次。
路径覆盖就是设计足够多的测试示例,使被测试程序中的所有可能路径至少执行一次。
因需要得到x=1的结果,故A、B、C的值为:
因需要得到z=1的结果,A≠0,C≠1,从已知条件推出:A=1,C=0,测试用例为A=1 B=0 C=0和A=1 B=1 C=0。