列表

详情


阅读以下关于嵌入式软件测试用例设计的叙述,回答问题1至问题3,将答案填入答题纸的对应栏内。
【说明】
某程序段的流程如图3-1所示,x、y是两个变量,K、J表示一段程序执行体,表3-1所示为本题可供选择的四组测试用例组。



【问题1】(3分)
简答以下问题。
(1)条件覆盖的含义是什么?
(2)路径覆盖的含义是什么?
【问题2】(2分)
在程序测试用例设计中,有语句覆盖、条件覆盖、判定覆盖(分支覆盖)和路径覆盖等。其中,(  )是最强的覆盖准则。
请把以下4个选项中正确的选项序号填入上述空白处。
①语句覆盖
②条件覆盖
③判定覆盖(分支覆盖)
④路径覆盖
【问题3】(10分)
为了对图3-1所示的程序段进行覆盖测试,必须适当地选取测试用例组。实现判定覆盖至少应采用的测试用例组是(1)和(2),实现条件覆盖至少应采用的测试用例组是(3);实现路径覆盖至少应采用的测试用例组是(4)和(5)。
请把以下8个选项中正确的选项序号填入上述空白处。
①测试用例组Ⅰ和Ⅱ
②测试用例组Ⅱ和Ⅲ
③测试用例组Ⅲ和Ⅳ
④测试用例组Ⅰ和Ⅳ
⑤测试用例组Ⅰ、Ⅱ和Ⅲ
⑥测试用例组Ⅱ、Ⅲ和Ⅳ
⑦测试用例组Ⅰ、Ⅲ和Ⅳ
⑧测试用例组Ⅰ、Ⅱ和Ⅳ

参考答案:

【问题1】
(1)条件覆盖是指设计足够的测试用例,使得被测程序每一个判定中的每个条件的所有可能结果至少出现一次。
(2)路径覆盖是指设计足够的测试用例,使得被测程序中每条路径至少执行一次。
【问题2】
(1)④(路径覆盖)
【问题3】
(1)⑤(2)⑧(3)⑦(4)⑤(5)⑧
其中,第(1)、(2)题的答案顺序可互换,第(4)、(5)题的答案顺序可互换。

详细解析:

本题考查软件测试的基本知识。
1.语句覆盖
设计足够多的测试用例,使得被测试程序中的每条可执行语句至少被执行一次。在本例中,可执行语句是指语句块1到语句块4中的语句。
2.判定覆盖
设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支至少被执行一次。
3.条件覆盖
设计足够多的测试用例,使得被测试程序中的每个逻辑条件的可能值至少被满足一次。
4.条件判定覆盖
设计足够多的测试用例,使得被测试程序中的每个判断本身的判定结果(真假)至少满足一次,同时,每个逻辑条件的可能值也至少被满足一次。即同时满足100%判定覆盖和100%条件覆盖的标准。
5.条件组合覆盖
设计足够多的测试用例,使得被测试程序中的每个判断的所有可能条件取值的组合至少被满足一次。
6.路径覆盖
设计足够多的测试用例,使得被测试程序中的每条路径至少被覆盖一次。
7.修正条件判定覆盖
要求在一个程序中每一种输入输出至少得出现一次,在程序中的每一个条件必须产生所有可能的输出结果至少一次,并且每一个判定中的每一个条件必须能够独立影响一个判定的输出,即在其他条件不变的前提下仅改变这个条件的值,而使判定结果改变。

上一题