更多“IPO算法的基本思想中,每次不是选择所有因素,而是采用()的方式生成测试用例。”相关问题
  • 第1题:

    黑盒法测试时,如果选择的测试用例需考虑输入条件的各种组合,应采用()

    法进行测试。


    参考答案:因果图

  • 第2题:

    关于白盒法覆盖程度的论述中正确的是(6)。

    A.语句覆盖:选择测试用例使程序中每条语句至多被执行一次

    B.判定覆盖:选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值

    C.条件覆盖:选择测试用例使每个条件都满足

    D.条件组合覆盖:将所有的判定条件都组合起来执行


    正确答案:B
    解析:白盒测试是结构测试,所以被测对象基本上是源程序,以程序内部逻辑为基础设计测试用例。使用白盒技术,要尽可能覆盖最多的路径,当程序内部存在判定时,就要考虑逻辑覆盖。1.语句覆盖:就是要设计足够多的测试用例(也就是输入的数据),使被测程序中每个语句至少执行一次。在这里,重点在于每个语句即每个语句都要被执行过。设计时要记住这一点。2.判定覆盖:指设计足够的测试用例,使得程序中每个判定表达式至少获得一次“真”值和“假”值,从而使程序的每一个分支至少都通过一次,因此判定覆盖又称为“分支覆盖”。3.条件覆盖:是指设计足够的测试用例,使得判定表达式中每个条件的各种可能的值至少出现一次。4.条件组合覆盖:是指设计足够的测试用例,使得每个判定表达式中条件的各种或能的值的组合都至少出现一次。这就是前面两个覆盖的组合。

  • 第3题:

    请分析该程序的规则说明和被测程序的功能,采用等价类划分方法设计测试用例。


    正确答案:首先分析程序的规则说明和被测程序的功能将其划分等价类并编号如下: 有效等价类输入: (1)区号:空白; (2)区号:3位数字; (3)前缀:从200~999的3位数字; (4)后缀:4位数字。 无效等价类输入: (5)区号:有非数字字符; (6)区号:少于3位数字; (7)区号:多于3位数字; (8)前缀:有非数字字符; (9)前缀:起始位为“0”; (10)前缀:少于3位数字; (11)前缀:多于3位数字; (12)后缀:有非数字字符; (13)后缀:少于4位数字; (14)后缀:多于4位数字。 根据上述等价类的划分设计测试用例如下: 有效测试用例输入如表6所示。
    首先分析程序的规则说明和被测程序的功能,将其划分等价类并编号,如下: 有效等价类输入: (1)区号:空白; (2)区号:3位数字; (3)前缀:从200~999的3位数字; (4)后缀:4位数字。 无效等价类输入: (5)区号:有非数字字符; (6)区号:少于3位数字; (7)区号:多于3位数字; (8)前缀:有非数字字符; (9)前缀:起始位为“0”; (10)前缀:少于3位数字; (11)前缀:多于3位数字; (12)后缀:有非数字字符; (13)后缀:少于4位数字; (14)后缀:多于4位数字。 根据上述等价类的划分,设计测试用例如下: 有效测试用例输入,如表6所示。

  • 第4题:

    软件测试是软件质量保证的主要手段之一,“高产”的测试是指(29)。

    A.用适量的测试用例运行程序,证明被测程序正确无误

    B.用适量的测试用例运行程序,证明被测程序符合相应的要求

    C.用少量的测试用例运行程序,发现被测程序尽可能多的错误

    D.用少量的测试用例运行程序,纠正被测程序尽可能多的错误


    正确答案:C
    解析:本题考查软件测试的相关知识。软件测试的目的就是在软件系统交付运行之前,尽可能多地发现系统中的错误和缺陷,它是保证软件质量的主要手段之一。在软件测试过程中,为了发现系统中的错误,应竭力设计能暴露错误的测试用例。高效的测试是指用少量的测试用例,发现被测软件尽可能多的错误。

  • 第5题:

    试题三(共 15分)

    阅读以下关于嵌入式软件测试用例设计的叙述,回答问题 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个选项中正确的选项序号填入上述空白处。

    ① 试用例组Ⅰ和Ⅱ

    ②测试用例组Ⅱ和Ⅲ

    ③测试用例组Ⅲ和Ⅳ

    ④测试用例组Ⅰ和Ⅳ

    ⑤测试用例组Ⅰ、Ⅱ和Ⅲ

    ⑥测试用例组Ⅱ、Ⅲ和Ⅳ

    ⑦测试用例组Ⅰ、Ⅲ和Ⅳ

    ⑧测试用例组Ⅰ、Ⅱ和Ⅳ


    正确答案:

    试题三(共15分)
    【问题1】(3分)
    (1)条件覆盖是指设计足够的测试用例,使得被测程序每一个判定中的每个条件的所有可能结果至少出现一次。
    (2)路径覆盖是指设计足够的测试用例,使得被测程序中每条路径至少执行一次。

    【问题2】(2分)
    (1)④(路径覆盖)

    【问题3】 (10分)
    (1)⑤
    (2)⑧
    (3)⑦
    (4)⑤
    (5)⑧
    其中,第(1)、(2)题的答案顺序可互换,第(4)、(5)题的答案顺序可互换。

  • 第6题:

    若采用白盒测试法对下面流程图所示算法进行测试,且要满足语句覆盖,则至少需要(51)个测试用例,若表示输入和输出的测试用例格式为(A,B,X;X),则满足语句覆盖的测试用例是(52)。

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

    答案:A
    解析:

  • 第7题:

    关于边界值的说法不正确的是()

    • A、边界值分析是一种补充等价划分的测试用例技术
    • B、它不是选择等价类的任意元素,而是选择等价类边界的测试用例
    • C、程序在处理大量中间数值时都是对的,但是在边界处极可能出现错误
    • D、边界值分析法考虑了输入变量之间的依赖关系

    正确答案:D

  • 第8题:

    ()是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少执行一次。

    • A、条件覆盖
    • B、组合覆盖
    • C、判定覆盖
    • D、语句覆盖

    正确答案:D

  • 第9题:

    使用因果图法生成测试用例的基本步骤?


    正确答案:(1)分析软件规格说明描述中,哪些是原因,哪些是结果,并给出每个原因和结果赋予一个标识符。
    (2)分析软件规格说明描述中的语义,找出原因与结果之间,原因之间对应的关系,根据这些关系,画出因果图。
    (3)由于语法或环境限制,有些原因与原因之间,结果与结果之间不可能同时出现。
    (4)把因果图转换成判定表。
    (5)把判定表的每一列拿出来作为依据,设计测试用例。

  • 第10题:

    下列不是软件测试基本原则的是()。

    • A、关键是注重测试用例的选择
    • B、选择尽可能多的测试用例
    • C、尽量不由程序设计者进行测试
    • D、充分注意测试中的群集现象

    正确答案:B

  • 第11题:

    单选题
    关于白盒法覆盖程度的论述中正确的是()。
    A

    语句覆盖:选择测试用例使程序中每条语句至少被执行一次

    B

    判定覆盖:选择测试用例使程序中每个判定至少都获得2次“真”值和一次“假”值

    C

    条件覆盖:选择测试用例使每个条件都满足

    D

    条件组合覆盖:将所有的判定条件的都组合起来执行


    正确答案: C
    解析: 暂无解析

  • 第12题:

    单选题
    下列不是软件测试基本原则的是()。
    A

    关键是注重测试用例的选择

    B

    选择尽可能多的测试用例

    C

    尽量不由程序设计者进行测试

    D

    充分注意测试中的群集现象


    正确答案: B
    解析: 暂无解析

  • 第13题:

    ● 某程序由相互关联的模块组成,测试人员按照测试需求对该程序进行了测试。出于修复缺陷的目的,程序中的某个旧模块被变更为一个新模块。关于后续测试,(10)是不正确的。

    (10)

    A.测试人员必须设计新的测试用例集,用来测试新模块

    B.测试人员必须设计新的测试用例集,用来测试模块的变更对程序其它部分的影响

    C.测试人员必须运行模块变更前原有测试用例集中仍能运行的所有测试用例,用来测试程序中没有受到变更影响的部分

    D.测试人员必须从模块变更前的原有测试用例集中排除所有不再适用的测试用例,增加新设计的测试用例,构成模块变更后程序的测试用例集


    正确答案:C

    试题(10)分析

    回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。在给定的预算和进度下,尽可能有效率地进行回归测试,需要对测试用例库进行维护并依据一定的策略选择相应的回归测试包。对测试用例库的维护通常包括删除过时的测试用例、改进不受控制的测试用例、删除冗余的测试用例、增添新的测试用例等。在软件生命周期中,即使一个得到良好维护的测试用例库也可能变得相当大,这使每次回归测试都重新运行完整的测试包变得不切实际,时间和成本约束可能阻碍运行这样一个测试,有时测试组不得不选择一个缩减的回归测试包来完成回归测试。

    上述回归测试的基本概念说明,修改了旧代码之后所进行的回归测试不一定要重新运行原有测试用例集中仍能运行的所有测试用例,可以在其中选择一个缩减的回归测试包来完成回归测试,因此选项“D”的说法是不正确的,应选择D。

    参考答案

    10C

  • 第14题:

    场景中的每一个场景都需要确定测试用例,一般采用矩阵或决策表来确定和管理测试用例。表6-5是一种通用格式,表中各行代表各个测试用例,而各列代表测试用例的信息。本例中的测试用例包含测试用例ID号、场景(或说明/条件)、测试用例中涉及的所有数据元素(作为输人或已经存在于数据库中)以及预期结果等项目。

    测试用例的设计步骤通常是:首先确定执行用例场景所需的数据元素(本例中包括账号、是否黑名单卡、输入油量、账面金额以及加油机油量),然后构建矩阵,最后确定包含执行场景所需的适当条件的测试用例。在表6-6的测试矩阵中,V表示有效数据元素,I表示无效数据元素,n/a表示不适用,例如CW01表示“成功加油”基本流。请按上述规定为其他应用场景设计测试用例矩阵。


    正确答案:参见本案例要点解析中的表6-17 这是一道要求读者掌握在场景法中设计测试用例的综合分析题。本题的分析思路如下: ①根据题干的描述可知本案例中存在着以下五种场景。 场景1;基本流A; 场景2:基本流A、备选流B; 场景3:基本流A、备选流C; 场景4:基本流A、备选流D; 场景5:基本流A、备选流E。 ②测试用例表(表6-6)已给出了场景1的测试用例对于其他4行所填写的内容可以通过参照场景1的测试用例的解答思路进行。 ③本案例中与场景2(AB)相关的描述有; A2:验证加油卡。加油机从加油卡的磁条中读取账户代码并检查它是否属于可以接收的加油卡。 B:加油卡无效。在基本流A2过程中该卡不能够识别或是为非本机可以使用的IC卡加油机退卡并退出基本流。 由“备选流B(加油卡无效)”的描述提取出场景2(AB)的名称——“卡无效”输入值是“账号无效”预期结果是“退卡”。 ④本案例中与场景3(AC)相关的描述有: A2:验证加油卡。加油机从加油卡的磁条中读取账户代码并检查它是否属于可以接收的加油卡。 A3:验证黑名单。加油机验证卡账户是否存在于黑名单中如果属于黑名单加油机吞卡。 C:卡账户属于黑名单。在墓本流A3过程中判断该卡账户属于黑名单例如:已经挂失加油机吞卡并退出基本流。 由“备选流C(卡账户属于黑名单)”的描述提取出场景3(AC)的名称——“黑名单卡”输入值是“帐号有效”和“黑名单卡”预期结果是“吞卡”。 ⑤基本流A1~A4、备选流D的相关描述与本案例中场景4(AD)有关。由“备选流D (加油卡账面现金不足)”的描述提取出场景4(AD)的名称——“金额不足”其输入值为“帐号有效”、“非黑名单卡”、“输入购油量有效”、“加油机油量有效”、“账面金额无效”预期结果是“提示错误或重新输入购油量或退卡”。 ⑥基本流A1~A4、备选流E的相关描述与本案例中场景5(AE)有关。由“备选流E (加油机油量不足)”的描述提取出场景5(AE)的名称——“油量不足”其输入值为“帐号有效”、“非黑名单卡”、“输入购油量有效”、“账面金额有效”、“加油机油量无效”预期结果是“提示错误或重新输入购油量或退卡”。 ⑦将以上分析结果按照试题中的规定——“V表示有效数据元素I表示无效数据元素n/a表示不适用”归纳整理成如表6-17所示的测试用例表。
    参见本案例要点解析中的表6-17 这是一道要求读者掌握在场景法中设计测试用例的综合分析题。本题的分析思路如下: ①根据题干的描述可知,本案例中存在着以下五种场景。 场景1;基本流A; 场景2:基本流A、备选流B; 场景3:基本流A、备选流C; 场景4:基本流A、备选流D; 场景5:基本流A、备选流E。 ②测试用例表(表6-6)已给出了场景1的测试用例,对于其他4行所填写的内容可以通过参照场景1的测试用例的解答思路进行。 ③本案例中与场景2(AB)相关的描述有; A2:验证加油卡。加油机从加油卡的磁条中读取账户代码,并检查它是否属于可以接收的加油卡。 B:加油卡无效。在基本流A2过程中,该卡不能够识别或是为非本机可以使用的IC卡,加油机退卡,并退出基本流。 由“备选流B(加油卡无效)”的描述提取出场景2(AB)的名称——“卡无效”,输入值是“账号无效”,预期结果是“退卡”。 ④本案例中与场景3(AC)相关的描述有: A2:验证加油卡。加油机从加油卡的磁条中读取账户代码,并检查它是否属于可以接收的加油卡。 A3:验证黑名单。加油机验证卡账户是否存在于黑名单中,如果属于黑名单,加油机吞卡。 C:卡账户属于黑名单。在墓本流A3过程中,判断该卡账户属于黑名单,例如:已经挂失,加油机吞卡并退出基本流。 由“备选流C(卡账户属于黑名单)”的描述提取出场景3(AC)的名称——“黑名单卡”,输入值是“帐号有效”和“黑名单卡”,预期结果是“吞卡”。 ⑤基本流A1~A4、备选流D的相关描述与本案例中场景4(AD)有关。由“备选流D (加油卡账面现金不足)”的描述提取出场景4(AD)的名称——“金额不足”,其输入值为“帐号有效”、“非黑名单卡”、“输入购油量有效”、“加油机油量有效”、“账面金额无效”,预期结果是“提示错误,或重新输入购油量,或退卡”。 ⑥基本流A1~A4、备选流E的相关描述与本案例中场景5(AE)有关。由“备选流E (加油机油量不足)”的描述提取出场景5(AE)的名称——“油量不足”,其输入值为“帐号有效”、“非黑名单卡”、“输入购油量有效”、“账面金额有效”、“加油机油量无效”,预期结果是“提示错误,或重新输入购油量,或退卡”。 ⑦将以上分析结果按照试题中的规定——“V表示有效数据元素,I表示无效数据元素,n/a表示不适用”,归纳整理成如表6-17所示的测试用例表。

  • 第15题:

    关于边界值的说法不正确的是()

    A.边界值分析是一种补充等价划分的测试用例技术

    B.它不是选择等价类的任意元素,而是选择等价类边界的测试用例

    C.程序在处理大量中间数值时都是对的,但是在边界处极可能出现错误

    D.边界值分析法考虑了输入变量之间的依赖关系


    参考答案:D

  • 第16题:

    Prim算法和Kruscal算法都是无向连通网的最小生成树的算法,Prim算法从一 个顶点开始,每次从剩余的顶点加入一个顶点,该顶点与当前生成树中的顶占的连边权重 最小,直到得到最小生成树开始,Kruscal算法从权重最小的边开始,每次从不在当前的生成树顶点之间的边中选择权重最小的边加入,直到得到一颗最小生成树,这两个算法都采用了( )设计策略,且( )。

    A.分治 B.贪心 C.动态规划 D.回溯 A.若网较稠密,则Prim算法更好 B.两个算法得到的最小生成树是一样的 C.Prim算法比Kruscal算法效率更高 D.Kruscal算法比Prim算法效率更高


    正确答案:B,A

  • 第17题:

    Prim算法和Kruscal算法都是无向连通网的最小生成树的算法,Prim算法从一个顶点开始,每次从剩余的顶点中加入一个顶点,该顶点与当前的生成树中的顶点的连边权重最小,直到得到一颗最小生成树;Kruscal算法从权重最小的边开始,每次从不在当前的生成树顶点中选择权重最小的边加入,直到得到一颗最小生成树,这两个算法都采用了 (请作答此空) 设计策略,且 ( ) 。

    A.分治
    B.贪心
    C.动态规划
    D.回溯

    答案:B
    解析:
    Prim算法从扩展顶点开始,每次总是"贪心的"选择与当前顶点集合中距离最短的顶点,而Kruscal 算法从扩展边开始,每次总是"贪心的"选择剩余的边中最小权重的边,因此两个算法都是基于贪心策略进行的。
    Prim 算法的时间复杂度为O(n2),其中n 为图的顶点数,该算法的计算时间与图中的边数无关,因此该算法适合于求边稠密的图的最小生成树;Kruscal 算法的时间复杂度为O(mlgm) ,其中m 为图的边数,该算法的计算时间与图中的顶点数无关,因此该算法适合于求边稀疏的图的最小生成树。当图稠密时,用 Prim 算法效率更高。但若事先没有关于图的拓扑特征信息时,无法判断两者的优劣。由于一个图的最小生成树可能有多棵, 因此不能保证用这两种算法得到的是同一棵最小生成树。

  • 第18题:

    Prim算法和Kruscal算法都是无向连通网的最小生成树的算法,Prim算法从一个顶点开始,每次从剩余的顶点中加入一个顶点,该顶点与当前的生成树中的顶点的连边权重最小,直到得到一颗最小生成树;Kruscal算法从权重最小的边开始,每次从不在当前的生成树顶点中选择权重最小的边加入,直到得到一颗最小生成树,这两个算法都采用了(64)设计策略,且(65)。

    A.分治
    B.贪心
    C.动态规划
    D.回溯

    答案:B
    解析:
    Prim算法和Kruscal算法都是基于贪心算法的应用。Prim算法的时间复杂度为O(n2),与图中边数无关,该算法适合于稠密图。Kruskal算法的时间复杂度只和边有关系,为O(elog2e),由于Kruskal算法只与边有关,因此适合求稀疏图的最小生成树。

  • 第19题:

    测试用例中,不仅要选择合理的输入数据,还要选择()的输入数据。


    正确答案:不合理

  • 第20题:

    关于白盒法覆盖程度的论述中正确的是()。

    • A、语句覆盖:选择测试用例使程序中每条语句至少被执行一次
    • B、判定覆盖:选择测试用例使程序中每个判定至少都获得2次“真”值和一次“假”值
    • C、条件覆盖:选择测试用例使每个条件都满足
    • D、条件组合覆盖:将所有的判定条件的都组合起来执行

    正确答案:A

  • 第21题:

    以下算法中()不是分集信号在合并时采用的算法。

    • A、最佳选择算法
    • B、等增益合并算法
    • C、最大比值合并算法
    • D、步进制算法

    正确答案:D

  • 第22题:

    填空题
    测试用例中,不仅要选择合理的输入数据,还要选择()的输入数据。

    正确答案: 不合理
    解析: 暂无解析

  • 第23题:

    问答题
    使用因果图法生成测试用例的基本步骤?

    正确答案: (1)分析软件规格说明描述中,哪些是原因,哪些是结果,并给出每个原因和结果赋予一个标识符。
    (2)分析软件规格说明描述中的语义,找出原因与结果之间,原因之间对应的关系,根据这些关系,画出因果图。
    (3)由于语法或环境限制,有些原因与原因之间,结果与结果之间不可能同时出现。
    (4)把因果图转换成判定表。
    (5)把判定表的每一列拿出来作为依据,设计测试用例。
    解析: 暂无解析

  • 第24题:

    单选题
    以下算法中()不是分集信号在合并时采用的算法。
    A

    最佳选择算法

    B

    等增益合并算法

    C

    最大比值合并算法

    D

    步进制算法


    正确答案: B
    解析: 暂无解析