在本节中,我们将讨论自上而下和自下而上的集成测试之间的区别;并查看它们的简要介绍。
正如我们在软件测试的前面部分所理解的那样,每个软件或应用程序都包含通过接口相互矛盾的各种模块。
当每个组件或模块独立于应用程序工作时,我们需要检查依赖模块的数据流,称为集成测试。它是功能测试的重要组成部分。
在详细介绍自上而下和自下而上的集成测试方法之前,我们需要了解增量集成测试,因为自上而下和自下而上的集成测试是其中不可或缺的一部分。
1. 增量集成测试方法
增量测试是集成测试中最重要的部分。模块根据客户的需要按升序逐个添加。并且所选模块需要在逻辑上相互关联。
通常,添加并测试两个或多个模块以固定函数的精度。并且,该过程将继续,直到成功测试所有模块或组件。
简单来说,我们可以说,当依赖模块之间存在很强的关系时,我们将执行增量集成测试。
现在,让我们看一下自上而下和自下而上的增量集成测试的定义和基本工作。
2. 什么是自上而下的集成测试? -
在自上而下的增量集成测试中,我们将增量或逐个添加模块,并按类似的顺序测试数据流,如下图所示:
-
此测试技术处理如何用较低级别的模块测试较高级别的模块,直到所有模块都成功测试为止。
-
在自上而下的方法中,我们还将确保我们添加的模块是前一个模块的子模块,就像子模块 C 一样,是子模块
B 的子模块。
-
执行自上而下的集成测试的目的是检测重大的设计缺陷并尽早修复它们,因为首先测试所需的模块。
3. 什么是自下而上的集成测试?
我们正在讨论的下一个测试方法是自下而上的集成测试。
- 这种类型的测试方法处理如何用高级模块测试较低级别的模块,直到所有模块都成功测试。
-
在自下而上的测试中,最后测试顶级关键模块。因此,它可能会导致缺陷。
-
简而言之,我们可以说我们将从底部到顶部添加模块,并按照下图所示的类似顺序测试数据流:
-
在自下而上的方法中,我们将确保要添加的模块是前一个模块的父模块,如下图所示:
4. 自上而下和自下而上的增量集成测试之间的主要区别
以下事实解释了自上而下和自下而上的集成测试之间的关键差异,这将允许测试工程师就他们想要为不同的测试过程选择哪种类型的集成测试方法做出明智的决定。
-
自上而下的集成测试方法简单且不占用大量数据;另一方面,自下而上的集成测试方法是复杂且数据密集型的。
-
与自下而上的集成测试相比,自上而下的集成测试过程要简单得多。
-
自上而下的方法向后看;另一方面,自下而上的方法具有前瞻性。
-
自上而下的集成测试通过重要到次要组件进行,而自下而上的方法通过从小到必要的组件或模块进行。
-
自上而下的方法通过收集内部操作故障的影响来分析风险,而自下而上的方法在模型的帮助下分析各个流程中的风险。
-
在自上而下的方法中,存根用于模拟子模块,这意味着存根作为瞬时替换。另一方面,在自下而上的测试方法中,驱动程序模拟主模块,这意味着驱动程序作为瞬时替换。
5. 自上而下的集成测试 VS 自下而上的集成测试
我们在下表中讨论了自上而下的集成测试和自下而上的集成测试之间的一些重要比较:
6. 结论
在本教程中,我们对自上而下和自下而上的增量集成测试进行了比较。
在这里,我们得出结论,需要执行自上而下和自下而上的方法来测试软件或应用程序。
自上而下的测试技术是最常用的集成测试类型。它是一种集成测试技术,用于模仿尚未集成的较低级别的模块。
自下而上的测试技术是一种增量集成测试方法,用于评估软件中的风险。执行这种方法的最显着优点是其用户友好性,这在软件开发中提供了高部署覆盖率。
在自上而下和自下而上的集成测试这两种方法中,自上而下都会产生更多的冗余结果,并以开销的形式导致额外的工作。同样,自下而上的方法具有挑战性,但比自上而下的方法更有效。
|