首页 > 试题广场 >

自顶向下增量式集成测试的缺点包括( )

[不定项选择题]
自顶向下增量式集成测试的缺点包括(      )
  • 驱动的开发工作量大
  • 底层验证被推迟
  • 底层组间测试不充分
  • 设计上的错误不能及时被发现

自顶向下测试:是从程序的初始模块开始测试。

(1)该方***在早期发现顶层的错误。

(2)早期的程序框架可以进行演示

(3)需要开发桩模块辅助测试。有些甚至需要多个桩模块辅助,加大了桩模块本来的错误影响。

(4)测试完一个上层模块后,挑选哪个模块作为下一个测试模块,以及测试的顺序没有唯一的界定标准。

优点:较早地验证了主要控制和判断点;按深度优先可以首先实现和验证一个完整的软件功能;功能较早证实,带来信心;只需一个驱动,减少驱动器开发的费用;支持故障隔离。

缺点:柱的开发量大;底层验证被推迟;底层组件测试不充分。
注意;自底向上才需要驱动开发模块。
发表于 2019-07-16 22:16:21 回复(4)

集成测试的基础策略有很多,通常分为两种:非增量式集成测试策略和增量式集成测试策略

第一种:非增量式集成测试策略

非增量式集成测试策略也叫做大爆炸集成、一次性集成

即在最短的时间内把所有的系统组件一次性集成到被测系统中,并通过最少的用例来验证整个系统,不考虑各组件之间的相互依赖性或者可能存在的风险。

优点:

  • 容易理解,比较简单

  • 可以多人并行工作,对人力物力资源的利用率较高。

缺点:

  • 问题定位和修改都比较困难
  • 即使被测系统能够被一次性集成,但是还会有许多接口上测试被遗漏,甚至会躲过测试遗留在系统中。

适用场景:

  • 适用于维护型的项目,并且新增的项目只有少数的模块被增加或修改
  • 适用于测试系统比较小,并且各个组件都经过了充分的单元测试。

第二种:增量式集成测试策略

增量式集成的策略有很多种:自顶向下集成,自底向上集成,三明治集成,基于功能集成,基于风险集成,基于分布式集成等。

该策略最大的特点就是:支持故障隔离、定位问题

1,自顶向下集成:(个人理解:随着底层不断增加,测试越来越难以全面。)

  自顶向下集成首先要集成主控制模块,然后从软件控制层次结构向下逐步集成,可以采用深度优先或者广度优先进行集成测试,主要验证接口的稳定性。

优势:

  • 能够较早的验证主要的控制点和判断点,如果主控制出现问题能够及时发现。

  • 深度优先:首先实现并验证一个完整的功能需求的正确性

缺点:

      桩的开发和维护是该方法的最大问题,底层模块增加,系统越来越复杂,底层模块从测试会越来越不充分。

使用场景:

        接口变化比较小的项目并且控制结构比较清晰。

2.自底向上集成

对底层模型的行为进行较早的验证,早期可能出现并行的测试。

缺点:

      对顶部的验证推迟了,设计上的错误不能被及时发现,随着顶层的集成,对产品底部的异常越来越难发现。

使用场景:

      顶层接口变化比较复杂的,变化比较频繁的系统

3.三明治集成

  三明治集成属于混合式集成,综合了自顶向下和自底向上集成的优缺点;测试的时候,将被测软件分成三份,中间一份为目标层,目标层的上部分采用自顶向下集成策略,下部分采用自底向上集成策略。最后在目标层进行会和。

缺点:

      最大的缺点就是对中间层的测试不够充分;

使用场景:

    适用于大多数项目。使用时要尽可能的减少驱动模块和桩模块的数量。

4.基于功能集成

     基于功能角度出发,按照功能的关键程度对功能模块进行集成。

缺点:

    对一些接口测试不充分。系统很复杂的时候,功能之间的相互联系很难分析清楚,会造成大量的冗余测试

5.基于风险集成

     是一种假设,系统风险度较高的模块间的集成往往是错误集中的地方。

优点:

     加速系统的稳定性。

关键点:

      风险的识别和评估。

通常跟基于功能集成合用

6.基于分布式集成

    主要是验证松散耦合的同级模块之间的交互稳定性。在一个分布式系统中,由于没有专门的控制轨迹,没有专门的服务层,所以构造测试包非常困难,主要验证远程主机之间的接口是否具有最低限度的可操作性。

使用场景:

   主要用在分布式系统中。

发表于 2020-09-17 11:43:38 回复(1)
完美错过正确选项。。。。
发表于 2019-11-11 00:50:22 回复(4)
自顶向下:桩
自底向上:驱动
发表于 2020-12-21 12:27:41 回复(0)
自顶问下增量测试不需要编写驱动模块,只需要编写桩模块
发表于 2021-03-09 13:28:38 回复(0)

自顶向下集成

优点:
  • 较早地验证了主要控制和判断点;
  • 按深度优先可以首先实现和验证一个完整的软件功能;
  • 功能较早证实,带来信心;
  • 只需一个驱动,减少驱动器开发的费用;
  • 支持故障隔离。

缺点:
  • 柱的开发量大;
  • 底层验证被推迟;
  • 底层组件测试不充分。

适应于产品控制结构比较清晰和稳定;
高层接口变化较小;
底层接口未定义或经常可能被修改;
产口控制组件具有较大的技术风险,需要尽早被验证;
希望尽早能看到产品的系统功能行为。

自底向上集成
优点:
  • 对底层组件行为较早验证;
  • 工作最初可以并行集成,比自顶向下效率高;
  • 减少了桩的工作量;
  • 支持故障隔离。


缺点:
  • 驱动的开发工作量大;
  • 对高层的验证被推迟,设计上的错误不能被及时发现。

适应于底层接口比较稳定;
高层接口变化比较频繁;
底层组件较早被完成。
编辑于 2023-02-09 17:04:21 回复(0)
为什么不能选D
发表于 2022-09-02 20:38:45 回复(0)
为什么A不是呢?不是需要底层的驱动吗
发表于 2022-09-14 13:47:00 回复(0)
底层组间测试不充分是是啥意思啊兄弟们
发表于 2021-11-21 21:09:18 回复(0)
去掉一个正确答案,选择一个正确答案,最终答案一个正确答案+两个错误答案(🙃
发表于 2020-04-24 22:24:59 回复(0)