对于一个嵌套型分支结构的程序,若有7个判定语句,则要满足路径覆盖准则,至少需要设计 个测试用例
时间: 2024-03-05 12:47:20 浏览: 24
对于一个嵌套型分支结构的程序,若有7个判定语句,要满足路径覆盖准则,则至少需要设计 127 个测试用例。
这是因为路径覆盖准则要求被测试程序的每个可能路径都被至少一个测试用例覆盖。对于嵌套型分支结构的程序,它的可能路径数很大,是各个判定语句路径数的乘积。在这种情况下,每个判定语句都有两个可能路径,即 true 和 false,所以该程序的可能路径数为 2 的 7 次方,即 128 条路径。
因此,为了满足路径覆盖准则,至少需要设计 128 个测试用例。但是,由于有些路径可能是不可达的,可以通过其他准则(如判定覆盖或条件覆盖)来减少测试用例的数量。
相关问题
语句覆盖测试用例、分支覆盖测试用例、条件覆盖测试用例、判定覆盖测试用例以及路径覆盖测试用例优缺点
语句覆盖测试用例:设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。优点是简单易行,缺点是无法检测出所有的错误。
分支覆盖测试用例:设计若干个测试用例,运行被测程序,使得每个判断的每个取值分支(true or false)至少经历一次。优点是比语句覆盖更强的测试能力,缺点是往往大部分的分支语句是由多个逻辑条件组合而成,若仅仅判断其整个最终结果,而忽略每个条件的取值情况,必然会遗漏部分测试路径。
条件覆盖测试用例:设计若干个测试用例,运行被测程序,使得每个判断中的每个条件都取到true和false。优点是比分支覆盖更强的测试能力,缺点是测试用例数量较多。
判定覆盖测试用例:设计若干个测试用例,运行被测程序,使得每个判断的每个取值分支(true or false)至少经历一次。优点是比分支覆盖和条件覆盖更强的测试能力,缺点是仍然存在遗漏部分测试路径的可能。
路径覆盖测试用例:设计若干个测试用例,运行被测程序,使得每个可能的执行路径至少经历一次。优点是最强的测试能力,缺点是测试用例数量非常大。
某程序的控制流程图中有15个结点,23条弧,则满足基本路径覆盖准则的测试用例数量可能为 ?
根据基本路径覆盖准则,要求测试用例能够覆盖程序的所有基本路径,其中基本路径是指程序中不存在循环和递归调用的简单路径。对于一个有 n 个结点和 m 条弧的控制流程图,其基本路径数为 m-n+2。因此,该程序的基本路径数为 23-15+2=10 条基本路径。
由于每条基本路径都需要至少一个测试用例来覆盖,因此满足基本路径覆盖准则的测试用例数量为至少 10 个。