niusouti.com
参考答案和解析
正确答案:B
更多“ ●下图所示的逻辑流实现折半查找功能,最少需要(34)个测试用例可以覆盖所有的可能路径。(34)A.1B.2C.3D.4 ”相关问题
  • 第1题:

    如下图所示的N-S图,至少需要( )个测试用例完成逻辑覆盖。

    A.A.12

    B.B.48

    C.C.27

    D.D.18


    正确答案:B

  • 第2题:

    在设计白盒测试用例时,(请作答此空)是最弱的逻辑覆盖。在下图所示流程中,至少需要( )个测试用例才可以实现路径覆盖。

    A.条件覆盖
    B.语句覆盖
    C.判定覆盖
    D.路径覆盖

    答案:B
    解析:
    主要的软件测试方法有:(1)语句覆盖。被测程序的每个语句至少执行一次。是一种很弱的覆盖标准。(2)判定覆盖。也称为分支覆盖,判定表达式至少获得一次“真”、“假”值。判定覆盖比语句覆盖强。(3)条件覆盖。每个逻辑条件的各种可能的值都满足一次。(4)路径覆盖。覆盖所有可能的路径。(5)判定/条件覆盖。每个条件所有可能的值(真/假)至少出现一次。(6)条件组合覆盖。每个条件的各种可能值的组合都至少出现一次。满足路径覆盖,只要覆盖所有可能的路径,总共是3条路径,所以需要用3个测试用例即可。

  • 第3题:

    在白盒测试法中,下图至少需要( )个测试用例才可以完成路径覆盖,语句组2不对变量i进行操作。

    A.1
    B.2
    C.3
    D.4

    答案:C
    解析:
    白盒测试常用的技术是逻辑覆盖,即考查用测试数据运行被测程序时对程序逻辑的覆盖程度。主要的覆盖标准有六种:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合条件覆盖和路径覆盖。
    (1)语句覆盖
    语句覆盖是指选择足够多的测试用例,使得运行这些测试用例时,被测程序的每个语句至少执行一次。很显然,语句覆盖是一种很弱的覆盖标准。
    (2)判定覆盖
    判定覆盖又称分支覆盖,它的含义是,不仅每个语句至少执行一次,而且每个判定的每种可能的结果(分支)都至少执行一次。判定覆盖比语句覆盖强,但对程序逻辑的覆盖程度仍然不高。
    (3)条件覆盖
    条件覆盖的含义是,不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果。条件覆盖不一定包含判定覆盖,判定覆盖也不一定包含条件覆盖。
    (4)判定/条件覆盖
    同时满足判定覆盖和条件覆盖的逻辑覆盖称为判定/条件覆盖。它的含义是,选取足够的测试用例,使得判定表达式中每个条件的所有可能结果至少出现一次,而且每个判定本身的所有可能结果也至少出现一次。
    (5)条件组合覆盖
    条件组合覆盖的含义是,选取足够的测试用例,使得每个判定表达式中条件结果的所有可能组合至少出现一次。显然,满足条件组合覆盖的测试用例,也一定满足判定/条件覆盖。因此,条件组合覆盖是上述五种覆盖标准中最强的一种。然而,条件组合覆盖还不能保证程序中所有可能的路径都至少经过一次。
    (6)路径覆盖
    路径覆盖的含义是,选取足够的测试用例,使得程序的每条可能执行到的路径都至少经过一次(如果程序中有环路,则要求每条环路径至少经过一次)。路径覆盖实际上考虑了程序中各种判定结果的所有可能组合,因此是一种较强的覆盖标准。
    本题的第二问比较复杂,关键是我们要清楚程序流程图中有几条路径,然后为每条路径设置一个测试用例。
    在本题给出的程序流程图中,如果我们将判定“x?

  • 第4题:

    在设计白盒测试用例时,( )是最弱的逻辑覆盖。在下图所示流程中,至少需要(请作答此空)个测试用例才可以实现路径覆盖。

    A.1
    B.2
    C.3
    D.4

    答案:C
    解析:
    主要的软件测试方法有:(1)语句覆盖。被测程序的每个语句至少执行一次。是一种很弱的覆盖标准。(2)判定覆盖。也称为分支覆盖,判定表达式至少获得一次“真”、“假”值。判定覆盖比语句覆盖强。(3)条件覆盖。每个逻辑条件的各种可能的值都满足一次。(4)路径覆盖。覆盖所有可能的路径。(5)判定/条件覆盖。每个条件所有可能的值(真/假)至少出现一次。(6)条件组合覆盖。每个条件的各种可能值的组合都至少出现一次。满足路径覆盖,只要覆盖所有可能的路径,总共是3条路径,所以需要用3个测试用例即可。

  • 第5题:

    对下图所示的程序流程图进行语句覆盖测试和路径覆盖测试,至少需要( )个测试用例。采用McCabe 度量法计算其环路复杂度为(请作答此空 )。

    A.1
    B.2
    C.3
    D.4

    答案:D
    解析:
    覆盖2条路径就能达到语句覆盖的要求,用2个测试用例即可。路径覆盖需要把程序中的所有路径覆盖遍,需要4个用例。整个程序流程图转化为结点图之后,一共11个结点,13条边,根据环路复杂度公式有:13-11+2=4。