测试小白必看!接口测试必需掌握的知识要点!

news2024/11/19 1:54:03

接口测试

接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

接口测试原理

通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一过程(request(请求)→response(响应))

接口测试的流程

类似于功能测试,需求讨论→评审需求→确定需求→产出接口定义→根据需求文档及接口定义设计测试用例(测试用例主要从业务场景,功能以及异常测试几个方面考虑)→评审用例→执行测试

接口测试的适用范围

一般用于多个系统间的交互开发,或者拥有多个子系统的应用系统开发的测试。接口测试适用于为其他系统提供服务的底层框架系统和中心服务系统。主要测试这些对外部提供的接口的正确性和稳定性。它也同样适用于上层系统中服务层接口,测试难度随层级而上升。即越往上难度越大。

接口测试的价值

降低成本,提高效率。接口测试能够提供系统复杂度上升情况下的低成本高效率的解决方案。它是一个完整的体系,还包括功能测试,性能测试等。

接口测试的分类

a) 系统与系统之间的调用(如分享时,微信会提供接口给“跑向珠峰”);

b) 上层服务对下层服务的调用 ;

c) 服务之间的调用(如添加一条数据时,会先调用数据查询的服务,查询改数据是否是重复数据);

不同类型的接口测试方法可能不一致,但总体来说,不管是哪种类型,被测接口即为服务方,测试手段为客户方,接口测试的目的就是:通过我们的测试手段,去验证满足其声明提供的功能。

简单设计接口测试的用例

a) 明确出发点——测试的目的是为了找出软件的缺口,修复并使之更加完善。在这一基础点上,接口测试也不例外。以找出软件的误漏为出发点,测试用例需紧贴此线,更容易找出问题所在。

b) 明确测试点——选择好的测试对象。系统内部层次繁复复杂,任何一个接口的变动都将导致用例失效。(可将这些最外层的接口根据数据的流向分为进入和流出两类,进入系统的接口实际上是我们用例的执行调用的接口。可通过参数对这些接口进行调用,模拟外部的使用;而流出的接口则是我们用例真正该验证的点。数据从哪里流出,流出的状态如何,此时系统的状态都是作为测试目的所要着重关注的部分)

c) 确认完整的测试对象的功能——确认外部接口提供给使用这些接口的外部用户什么样的功能,外部用户真正需要的是什么样的功能予以区别。用例的设计要严格按照测试对象功能设计才是正确的用例。

测试用例包括哪些内容

功能点,测试环境,测试数据,执行操作以及预期结果。

a) 接口测试测试的功能点:如果一个接口功能过于复杂时,可以对接口用例进行结构划分(如根据层次,平台,功能点等等),这样用例具有更好的可读性(接口划分原则为:以接口提供的功能点的不同进行合适粒度的划分,同一功能点的用例又可根据测试环境的不同,数据的不同进行用例的填充)

b) 接口测试用例的环境:程序内部环境和程序所调用的外部接口的环境。

c) 关于接口测试测试数据:分为两部分:接口参数数据和用例执行所需系统数据。数据的设计、准备测试用例的数据不可马虎。通过好的测试数据查找问题,能极大的提高工作效率。接口参数数据需要对每个参数根据测试接口的实际功能进行分析,在符合业务逻辑的情况下进行逻辑组合排列,不要遗漏某些边界值和错误点的数据,这样用例更容易发现问题。

d) 执行操作:即对所测接口的调用。

e) 预期结果:根据需求进行验证,是衡量软件是否达到预期的标准。应该着重细致,每个用例均需验证,应该避免一个用例重复做相同的验证,提高测试用例的效率。

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

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

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

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

相关文章

SpringBoot中使用JdbcTemplate访问Oracle数据库

Oracle相信大家都不陌生吧,一个大型的数据库,至于数据库,我相信各位都比较熟悉了,一个软件系统,不论是我们常做的App、小程序、还是传统的web站点,我们都有用户的信息,相关业务的数据&#xff0…

公司如何禁止拷贝文件

公司如何禁止拷贝文件 安企神U盘管理系统下载使用 禁止拷贝文件是一种数据安全措施,通常在企业中用于保护重要信息和知识产权。禁止拷贝文件的方法需要根据公司的实际情况来选择和实施,以下是一些常见的方法,可用于防止文件拷贝&#xff1a…

Splunk 之 filed 恢复

1: 背景: 我们在工作过程中,或者是和很多team 进行交互的时候,总会有 filed 共用的情况,还有就是filed 会被相同权限的同事删除等等,这种情况下,就要求做好 /opt/splunk/etc/apps 的备份工作。 如果知道原…

Amazon Lambda 转 Container Image 方式部署

背景描述 对于从 Lambda Console通过 Author from scratch 创建的函数, 可以直接在浏览器中编辑代码和调试, 非常方便. 不过由于 Lambda 函数 Quota 限制 Console 编辑器最大 3MB, 包含 Layer 和自定义 Runtim 后最大 250MB, 并且此配额不支持提限, 因此当函数体量较大时就不适…

基于AI与物联网技术的智能视频监控系统架构剖析

智能视频监控系统正逐渐成为我们日常生活和工作中不可或缺的一部分。基于物联网的智能监控系统架构为我们在各个领域提供了更高效、智能化和安全的监控解决方案。本文将以旭帆科技EasyCVR视频监控云平台为例,介绍基于AI、物联网的智能监控系统的架构,并探…

一网打尽——线粒体基因组高级分析

线粒体堪称生命活动的“能量供给站”,这种存在于大多数细胞中的细胞器,拥有自身的遗传物质和遗传体系,除了为细胞供能之外,线粒体还参与到多种细胞功能过程中,拥有调控细胞生长和细胞周期的能力。 典型的动物线粒体是…

【BUG】Nginx转发失败解决方案

最近在做项目的时候出现了一个问题,琢磨了好久,来浅浅记录一下。 这个项目后端使用的是gateway网关和nacos实现动态的路由,前端使用nginx来管理前端资源,大体流程:浏览器发起请求,经过nginx代理&#xff0c…

智能化燃气场站建设4要点!

关键词:智慧燃气、智慧燃气场站、智慧燃气建设、智慧燃气平台、 设备设施数字化管理平台 建 议 建设智能燃气场站,首先,要调研现有场站,摸清掌握现有场站智能化数据。在现有设施基础上,对现有燃气场站进行技术升级设…

Angular-03:组件模板

各种学习后的知识点整理归纳,非原创! 组件模板 ① 数据绑定② 属性绑定③ 类名绑定④ 样式绑定⑤ 事件绑定⑥ 获取原生DOM对象6.1 在组件模板中获取6.2 在组件类中获取 ⑦ 双向数据绑定⑧ 内容投影8.1 select选择器8.2 单槽投影8.3 多槽投影 ⑨ 安全操作…

[开源]传统实体产业提供进销存管理解决方案,助传统企业降本增效

一、开源项目简介 管店云, 技术链接产业. 管店云为传统实体产业提供进销存管理解决方案,实现进货、库存、销售、收银、记账完整的业务场景,帮助传统产业实现数字化转型,提升管理效率,提高自身数字化经营的能力,让管人管…

Unity的碰撞检测(六)

温馨提示:本文基于前一篇“Unity的碰撞检测(五)”继续探讨两个游戏对象具备刚体的BodyType均为Dynamic,但是Collision Detection属性不同的碰撞检测,阅读本文则默认已阅读前文。 (一)测试说明 在基于两个游戏对象都具…

退运险业务及系统架构演进史

作者:曾利⺠、杨代铭 ⽂章简介:本⽂回顾退运险上线⼗年以来相关系统架构的演进。 背景    退运险对于我司来说是⼀个举⾜轻重⼀款产品,初创时期贡献了99.9%的 保费收⼊,随着公司的发展各类产品的不断创新,退运险的…

前端移动web高级详细解析一

01-平面转换 简介 作用:为元素添加动态效果,一般与过渡配合使用 概念:改变盒子在平面内的形态(位移、旋转、缩放、倾斜) 平面转换也叫 2D 转换,属性是 transform 平移 transform: translate(X轴移动距…

YOLOv5算法改进(21)— 添加CA注意力机制 + 更换Neck网络之BiFPN + 更换损失函数之EIoU

前言:Hello大家好,我是小哥谈。通过上节课的学习,相信同学们一定了解了组合改进的核心。本节课开始,就让我们结合论文来对YOLOv5进行组合改进(添加CA注意力机制+更换Neck网络之BiFPN+更换损失函数之EIoU),希望同学们学完本节课可以有所启迪,并且后期可以自行进行YOLOv5…

记一次任意文件下载到Getshell

任意文件下载(Arbitrary File Download)是一种常见的 Web 攻击技术,用于窃取服务器上任意文件的内容。攻击者利用应用程序中的漏洞,通过构造恶意请求,使应用程序将任意文件(如配置文件、敏感数据等&#xf…

IDE的组成

集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务…

这场研讨会硬件工程师不要错过

在高速PCB设计中如何保障高频信号的传输和接收,以及保证信号完整性和稳定性? 如何解决EMI抑制、时钟分配和功率供应的问题? 如何使用开源EDA工具 KiCad? 如何使用DFM软件高质量提升pcb产品制造,优化制造成本&#x…

C++入门04—数组

1. 概述 所谓数组,就是一个集合,里面存放了相同类型的数据元素 特点1:数组中的每个数据元素都是相同的数据类型 特点2:数组是由连续的内存位置组成的 2. 一维数组 2.1 一维数组定义方式 一维数组定义的三种方式: …

Linux常用命令——chroot命令

在线Linux命令查询工具 chroot 把根目录换成指定的目的目录 补充说明 chroot命令用来在指定的根目录下运行指令。chroot,即 change root directory (更改 root 目录)。在 linux 系统中,系统默认的目录结构都是以/,…

喜报 | 星辰天合被认定为 2023 年度北京市知识产权示范单位

近日,北京市知识产权局官方网站发布通知,星辰天合等 150 家单位被认定为 2023 年度北京市知识产权示范单位。 为深化实施创新驱动战略和首都知识产权战略,促进企事业单位提升创新能力和知识产权创造、保护和运用能力,培育知识产权…