📜  自上而下的集成测试中的步骤

📅  最后修改于: 2021-08-27 18:16:48             🧑  作者: Mango

自上而下的测试是一种增量集成测试方法,其中通过通过架构结构的控制流从上到下向下集成或合并两个或多个模块来完成测试。其中,首先测试高级模块,然后再测试低级模块。然后,最后完成集成以确保系统正常运行。存根和驱动程序用于执行此项目。此技术用于增加或刺激未集成到较低级别的模块的行为。

加工 :
以下是在处理过程中需要遵循的步骤:

  1. 测试驱动程序代表主控制模块,也称为高级模块,存根通常用于直接从属于(存在或排在另一级之下)所有高级模块的所有低级模块。
  2. 在此,测试从头到尾进行。因此,高级模块也要先进行隔离测试。
  3. 此后,低级模块或从属模块或存根一次一次地替换高级别模块。这可以使用深度优先或广度搜索之类的方法来完成。
  4. 重复该过程,直到集成并测试了每个模块。
  5. 在完成每组测试后,另一个存根将替换当前的真实模块或控制模块。这些存根充当被调用模块(存根)的临时替代品,并提供与实际产品相同的结果或输出。
  6. 为了检查是否有任何缺陷或任何错误发生或存在,请进行回归测试,并且重要的是要减少由于发生错误而可能引起的任何副作用。

缺点:
以下是自顶向下的集成测试中可能出现的一些逻辑问题:

  1. 上层模型或高级模块应进行适当测试,以保持质量并处理下层模块或自顶向下的测试存根。
  2. 众所周知,在这种类型的pf测试中,存根会临时替换较低级别的模块,但是通过这种替换,数据不会向上移动。因此,无法按时进行测试,这会导致测试延迟。
  3. 由于替换,存根在每次替换后可能会变得越来越复杂。
  4. 失去对特定测试和特定模块之间对应关系的控制是过程中可能出现的主要问题。
  5. 有时,较低级别的模块测试不充分(质量欠佳)。

例子 –
在自顶向下的集成测试中,如果采用深度优先的方法,那么我们将从模块M1开始集成。然后,我们将整合M2,然后整合M3,M4,M5,M6,最后整合M7。

在自顶向下的集成测试中,如果采用广度优先的方法,则我们将首先集成模块M1,然后是M2,M6。然后,我们将集成模块M3,M4,M5,最后是M7。

好处 :

  • 无需编写驱动程序。
  • 在早期阶段就可以识别接口错误,并且故障定位也更容易。
  • 无关紧要的低级实用程序没有经过良好的测试,而高级测试人员则以适当的方式进行了良好的测试。
  • 一旦添加了输入输出功能,测试用例的表示将变得更加容易和简单。

缺点:

  • 它需要很多存根和模拟对象。
  • 在添加输入输出功能之前,在存根中表示测试用例并不容易,而且可能会很困难。
  • 重要的低级实用程序也没有得到很好的测试。