集成测试如何做?

今天学习下如何进行集成测试。

什么是集成测试?

集成测试被定义为一种测试类型,其中软件模块在逻辑上集成并作为一个组进行测试。一个典型的软件项目由多个软件模块组成,由不同的程序员编码。此级别测试的目的是在集成这些软件模块时,暴露它们之间交互中的缺陷

集成测试的重点是检查这些模块之间的数据通信。因此,它也被称为“I & T”(集成和测试),“字符串测试”,有时也称为“线程测试”。

为什么要进行集成测试?

虽然每个软件模块都进行了单元测试,但是由于各种原因仍然存在缺陷

一般来说,模块是由独立的软件开发人员设计的,他们的理解和编程逻辑可能与其他程序员不同。集成测试是验证软件模块统一工作的必要条件

在模块开发时,客户的需求有很大的变化机会。这些新需求可能无法进行单元测试,因此系统集成测试就变得必要了。

软件模块与数据库的接口可能出现错误

外部硬件接口,如果有,可能是错误的

不充分的异常处理可能会导致问题。

集成测试用例的示例

集成测试用例与其他测试用例的不同之处在于,它主要关注模块之间的接口和数据/信息流。这里优先考虑的是集成环节,而不是已经测试过的单元功能。

应用程序有3个模块,分别是“登录页面”、“邮箱”和“删除邮件”,每个模块在逻辑上都是集成的。

这里不太关注登录页面测试,因为它已经在单元测试中完成了。但是检查它是如何链接到邮箱页面的。

类似邮箱:检查它与删除邮件模块的集成。

测试用例id

测试用例目标

测试用例描述

预期结果

1

检查“登录”和“邮箱”模块之间的接口链接

输入登录凭证,单击“登录”按钮

跳转到“邮箱”

2

查看“邮箱”和“删除邮件”模块之间的接口链接

从“邮箱”中选中该邮件,单击“删除”按钮,

选中的邮件将出现在“已删除/垃圾”文件夹中

集成测试的类型

软件工程定义了执行集成测试的各种策略,即。

  • 大爆炸方法:

  • 增量法:进一步分为以下几部分

  • 自顶向下法

  • 自底向上法

  • 三明治方法——自上而下和自下而上的结合

以下是不同的策略,它们的执行方式及其局限性和优点。

大爆炸测试

大爆炸测试是一种集成测试方法,在这种方法中,所有组件或模块立即集成在一起,然后作为一个单元进行测试。在测试时,这组组合的组件被视为一个实体。如果单元中的所有组件都没有完成,集成过程就不会执行。

优点:

适用于小型系统。

缺点:

故障定位困难。

考虑到在这种方法中需要测试的接口数量之多,一些需要测试的接口链接很容易被遗漏。

由于集成测试只能在“所有”模块设计完成后开始,因此测试团队在测试阶段执行的时间更少。

由于所有模块都是一次测试,因此高风险的关键模块不会被隔离,并根据优先级进行测试。处理用户界面的外围模块也没有被隔离和优先级测试。

增量测试

在增量测试方法中,测试是通过集成两个或多个彼此逻辑相关的模块来完成的,然后测试应用程序的正常功能。然后以增量方式集成其他相关模块,该过程继续进行,直到所有逻辑相关的模块都被集成并成功测试为止。

增量法依次采用两种不同的方法:

  • 自底向上

  • 自顶向下

打桩和驱动器

打桩和驱动程序是集成测试中用来促进软件测试活动的虚拟程序。这些程序作为测试中缺失模型的替代品。它们不实现软件模块的整个编程逻辑,但它们在测试时模拟与调用模块的数据通信。

打桩:被测试模块调用。

驱动程序:调用要测试的模块。

自底向上集成测试

自底向上集成测试是一种首先测试较低级别模块的策略。然后,这些测试过的模块将进一步用于促进更高级别模块的测试。该过程继续进行,直到顶级的所有模块都被测试完毕。一旦测试和集成了较低级别的模块,就会形成下一级别的模块。

图解表示:

集成测试教程:大爆炸,自顶向下和自底向上

优点:

  • 便于故障定位。

  • 不像大爆炸方法那样浪费时间等待所有模块的开发

缺点:

  • 控制应用程序流程的关键模块(在软件体系结构的顶层)最后进行测试,可能容易出现缺陷。

  • 早期的原型是不可能的

自顶向下集成测试

自顶向下集成测试是一种按照软件系统的控制流程从上到下进行集成测试的方法。首先测试较高级别的模块,然后测试和集成较低级别的模块,以检查软件功能。存根用于测试如果某些模块还没有准备好。

图解表示:

 集成测试教程:大爆炸,自顶向下和自底向上

优点:

  • 更容易定位故障。

  • 获得早期原型机的可能性。

  • 对关键模块进行优先级测试;主要的设计缺陷可以先被发现并修复。

缺点:

  • 需要很多存根。

  • 较低级别的模块测试不足。

三明治测试

三明治测试是一种策略,在这种策略中,顶层模块与较低层模块进行测试,同时较低层模块与顶层模块集成并作为一个系统进行测试。它是自顶向下和自底向上方法的组合,因此被称为混合集成测试。它同时使用存根和驱动程序。

集成测试教程:大爆炸,自顶向下和自底向上

如何进行集成测试?

不考虑软件测试策略的集成测试过程(如上所述):

  • 准备集成测试计划

  • 设计测试场景、用例和脚本。

  • 执行测试用例,然后报告缺陷。

  • 跟踪并重新测试缺陷。

  • 重复步骤3和4,直到集成成功完成。

集成测试计划的简要描述

它包括以下属性:

  • 测试的方法/方法(如上所述)。

  • 集成测试的范围和范围外项目。

  • 角色和责任。

  • 集成测试的先决条件。

  • 测试环境。

  • 风险和缓解计划。

集成测试的进入和退出标准

在任何软件开发模型中集成测试阶段的进入和退出标准

输入条件:

  • 单元测试组件/模块

  • 所有高优先级的bug修复并关闭

  • 所有模块代码完成并成功集成。

  • 集成测试计划、测试用例、要签署并记录的场景。

  • 为集成测试设置所需的测试环境

退出标准:

  • 成功测试集成应用程序。

  • 已执行的测试用例被记录

  • 所有高优先级的bug修复并关闭

  • 提交技术文件后提交发布说明。

集成测试的最佳实践/指南

  • 首先,确定可以采用的集成测试策略,然后相应地准备测试用例和测试数据。

  • 研究应用程序的体系结构设计,确定关键模块。这些需要按优先级进行测试。

  • 从架构团队获得接口设计,并创建测试用例以详细地验证所有接口。必须详细测试与数据库/外部硬件/软件应用程序的接口。

  • 在测试用例之后,发挥关键作用的是测试数据。

  • 在执行之前,总是准备好模拟数据。不要在执行测试用例时选择测试数据。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/199333.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全网最新最全的Appium自动化:Appium常用操作之H5页面操作 --待补充!

手机chrome浏览器操作: 手机端chrome浏览器一般用于打开H5手机版网站,它的操作方式与PC端的浏览器操作(即selenium对浏览器的操作)是一模一样的,由于切换后的WebView页面也属于网页 下述的方法中部分支持在webview页面…

什么是JVM的内存模型?详细阐述Java中局部变量、常量、类名等信息在JVM中的存储位置

导航: 【Java笔记踩坑汇总】Java基础JavaWebSSMSpringBootSpringCloud瑞吉外卖/黑马旅游/谷粒商城/学成在线设计模式面试题汇总性能调优/架构设计源码-CSDN博客 目录 一、JVM基本介绍 二、JVM内存模型 2.0 概述 2.1 类加载子系统 2.2 运行时数据区 2.2.0 基本…

python中的输入输出

文章目录 输入函数input()例子1.如何输入获得两个字符串?(若输入abc def或abc,def)2.如何输入获得两个整数?(若输入34,567)3.如何输入后获得一个元素均为数值型的列表?(若输入12,3.4,567或[12,3.4,567]) 输出输出函数print()pr…

【上海大学《面向对象程序设计A》课程小项目报告】抽象向量类模板及其派生类

1 项目内容及要求 本项目通过设计一个抽象向量类模板,以及一个通用的向量类模板和一个字符串类作为其派生类,以满足各种应用场景中的数据存储和处理需求。 项目内容: 抽象向量类模板。派生向量类。派生字符串类。测试及异常处理。联合测试…

如何计算光伏电站的发电量?

光伏电站的发电量是衡量其性能和经济效益的关键指标。准确地预测和计算光伏电站的发电量对于投资决策、系统设计和优化至关重要。以下是一些计算光伏电站发电量的主要步骤和方法: 1、确定光伏电站的规模和配置 了解光伏电站的组件数量、类型、功率等级以及安装位置…

html和css写QQ会员页面导航

目录 1、css代码 2、html代码 效果图 1、css代码 <style>* {padding: 0;margin: 0;list-style: none;text-decoration: none;}div {margin: 30px auto;}li {float: left;height: 60px;background-color: rgb(102, 102, 102);line-height: 40px;}img {height: 100%;ma…

Vellum —— 相关特点

目录 Cloth Breaking and tearing Paneling and draping Cloth simulation Calculating mass and thickness Working with low res and high res cloth Quick moving cloth Softbody Vellum softbodies Plasticity with softbodies Constraints Stitch and slid…

Java集合常见问题

目录 Java集合 1.前言2.集合3.Collection接口类3.1 List接口3.1.1 ArrayList&#xff08;常用&#xff09;3.1.2 LinkedList&#xff08;常用&#xff09;3.1.3 Vector&#xff08;不常用&#xff09; 3.2 Set接口3.2.1 HashSet&#xff08;常用&#xff09;3.2.2 LinkedHash…

【银行测试】第三方支付功能测试点+贷款常问面试题(详细)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、第三方支付功能…

华为快应用中自定义Slider效果

文章目录 一、前言二、实现代码三、参考链接 一、前言 在华为快应用中官方提供了<slider>控件&#xff0c;但是这个控件的限制比较多&#xff0c;比如滑块无法自定义&#xff0c;所以这里进行下自定义&#xff0c;自己修改样式。 二、实现代码 整体效果如下: 源码如下…

SL6015B降压恒流60V耐压1.5A高辉调光LED芯片 电路简单 元器件少

SL6015B是一款专为LED照明应用设计的降压恒流芯片&#xff0c;具有60V的耐压能力&#xff0c;最大输出电流可达1.5A。它采用高辉调光方式&#xff0c;通过改变输入电压或电流来调节LED的亮度。此外&#xff0c;SL6015B还具有电路简单和元器件数量少的特点&#xff0c;使其成为一…

QT-在ui界面中给QWidget增加Layout布局的两种方法

QT-在ui界面中给QWidget增加Layout布局的两种方法 方式一 在UI界面&#xff0c;用拖拽的方式加入Layout方式二 用notepad软件打开.ui文件&#xff0c;手动加入Layout代码 目标&#xff1a;去除右下角红标&#xff0c;给tab标签增加Layout属性。 方式一 在UI界面&#xff0c;用…

leetcode:前序遍历

题目描述 题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 题目分析 这道题的难点在于&#xff0c;前序遍历一遍之后需要将数值存在数组里&#xff0c;returnsize就是数组的大小 所以我们先构建一个函数来计算节点的个数 然后我…

中国AI大模型,应该如何商业化?

虽然大模型商业化的路径较为清晰&#xff0c;目前国内厂商也都在积极探索&#xff0c;但大模型的商业化之路&#xff0c;不能仅限于商业模式的探索尝试&#xff0c;更在于解决大模型发展的底层问题。 作者|斗斗 编辑|皮爷 出品|产业家 如今&#xff0c;大模型的商业化问题再…

深度观察|近视防控乱象下,角膜塑形镜撬动百亿市场的背后…

前不久&#xff0c;“晒眼皮”莫名上了热搜。顾名思义&#xff0c;就是在太阳底下闭眼&#xff0c;让眼皮享受日光浴。 不少近视患者相信&#xff0c;这种做法可以延缓近视&#xff0c;甚至可以让近视度数“清零”。毫无疑问&#xff0c;这是一个收割智商税的做法&#xff0c;…

敏捷开发迭代缺陷统计的重要性

在敏捷开发中&#xff0c;迭代缺陷统计具有重要性&#xff0c;对团队和项目具有多方面的影响&#xff1a; 早期发现和解决问题&#xff1a; 迭代缺陷统计允许团队及时识别和定位在迭代中出现的问题。这有助于早期解决问题&#xff0c;避免问题扩大化&#xff0c;并最大程度地减…

Oracle连接错误:ORA-28040:没有匹配的验证协议

一、产生原因&#xff1a;oci动态库版本太低&#xff0c;无法连接高版本的数据库 二、解决办法 1、下载高版本的oci库 https://www.oracle.com/database/technologies/instant-client/winx64-64- downloads.html 2、解压并复制oci动态库 3、粘贴到相应的目录

中国移动联合玻色量子打造“人人可用的量子计算”——恒山光量子算力平台公测上线

2023年12月1日&#xff0c;中国移动云能力中心&#xff08;简称“移动云”&#xff09;联合北京玻色量子科技有限公司&#xff08;简称“玻色量子”&#xff09;共同打造的“五岳量子计算云平台——恒山光量子算力平台”在苏州正式发布。这是玻色量子继2023年5月16日成功发布自…

常见的关于vcruntime140.dll丢失的解决方法,找不到vcruntime140.dll丢失的问题

vcruntime140.dll文件是Microsoft Visual C Redistributable for Visual Studio 2015的一部分&#xff0c;它是运行使用Visual Studio 2015 开发的应用程序所必需的。如果你在尝试打开某些游戏或应用程序时遇到“vcruntime140.dll丢失”或“找不到vcruntime140.dll”这样的错误…

计算机网络入侵检测技术研究

摘 要 随着网络技术的发展&#xff0c;全球信息化的步伐越来越快&#xff0c;网络信息系统己成为一个单位、一个部门、一个行业&#xff0c;甚至成为一个关乎国家国计民生的基础设施&#xff0c;团此&#xff0c;网络安全就成为国防安全的重要组成部分&#xff0c;入侵检测技术…