什么是接口测试?

news2025/2/27 17:30:03

接口测试概述

什么是接口

现在的项目中基本是构建在各种API中。有自己提供的API,有调用别人的API。API就像是钥匙,每个门都需要钥匙去打开。要想去打开门,没有钥匙怎么行呢。所以API之所以重要,就是因为它是网络世界的通行证。 对于程序来说,API就是提供给被人调用的方式,它会规定应该怎么使用。其中包括:协议,地址,参数和响应等。

为什么要进行接口测试

接口在微服务流行的当下,地位是非常重要的。因为服务跟服务之间,都是用接口进行的交互。而对于测试来说,UI是不稳定的,单元测试很多是开发负责。而接口是切入点更合适,稳定性更好的一种测试方式。这种测试方式的优势就在于成本和收益的平衡。既不用花去很多成本看不到收益,又可以很好的体现出对于质量的把控。所以,接口测试在当下的测试行内来说,是恰当的存在。

接口测试的分类

接口测试从协议上来说,可以分成下面几类:

  1. TCP协议接口
  2. HTTP协议接口
  3. RPC协议接口 TCP协议其实就是socket接口,一般在企业级开发中很少碰到。HTTP协议,这是最常见也是最重要的,里面涉及到很多使用细节,后面会详细讲述。RPC协议,常见的有Dubbo和其他自研的RPC协议,一般都是构建在TCP或者HTTP之上的。这种协议的特点就是有自己的一套架构,使用他们提供的架构进行测试就可以了。很多需要自己写代码进行测试。

收益

对于接口测试的收益,可以从两方面进行衡量。一个是接口的覆盖程度,一个是接口测试的效果。覆盖程度很好理解,就是多少场景覆盖。效果的衡量就不是那么好做了。一般是用代码覆盖率和每次发布自动化测试程度进行衡量。

接口测试工具介绍

现在市面上的接口测试基本上是两种:接口测试产品和接口测试平台。接口测试产品有postman,jmeter,charles等都是目前比较主流的。而接口测试平台基本上是自研或者开源的平台产品,在此我比较推荐的是YAPI,能想到的接口测试的功能基本上都有。

工具比较

下面我们对常用的工具进行一个简要的说明,其实不是一个很全面客观的评测,而是针对自己的理解做了些脚注。

  • postman HTTP接口很全面的测试工具。有参数化、数据驱动、批量执行、自定义断言,并且可以多端同步。
  • jmeter 偏向于性能测试,也是针对HTTP接口的。有参数化、Hook、批量执行等,基本针对单机版应用场景。配合性能测试会更适合。
  • charles 偏向于网络抓包,也是针对HTTP接口。接口测试功能上稍弱。用的不多。 从上面可以看出,postman很适合做HTTP接口的测试工具。如果有debug需求可以用charles,如果有性能需求可以用jmeter,如果是单纯的接口测试,个人认为postman基本上覆盖了所有场景。后面我也会从场景角度对postman进行深度的剖析。

接口测试平台

其实,在接口测试平台维度,也有几个好的产品,我个人比较推崇YAPI。因为他的切入点很好,现在生态也做的比较强大。 从YAPI产品设计的角度说,接口测试平台需要解决这么几个场景:

  1. 接口文档可视化,需要在平台上展示接口文档,让开发和测试有统一的入口
  2. 平台支持接口测试的场景:参数化、数据驱动、断言等
  3. 平台可以提供mock服务和调试手段
  4. 协作方式,从项目或者应用角度作为入口,组织接口和测试用例集合。 当然,除了YAPI,Hitchhiker也是不错的产品。

小结

这篇文章列出了一些工具和平台,如果作为一个接口测试的初学者,大家可以用postman。如果想用平台方式,让团队可以协作的进行接口测试,建议试下YAPI。

最后:下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

  全套资料获取方式:点击下方小卡片自行领取即可

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

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

相关文章

【计算机网络】 TCP协议头相关知识点

文章目录 TCP协议头 TCP协议头 我们来看一下TCP协议头里都有什么东西,研究一下为什么TCP协议是可靠的呢 TCP协议可靠是因为在协议头里带着一些校验的数据 首先是源端口和目的端口,这两个是UDP中也有的,但是UDP中只有这两个,没有…

C++多线程编程(第三章 案例3:把案例1改装成案例2的条件变量多线程方式)

由于案例1采用等待循环方式进行写入,如果更换成案例2的条件多线程方式,效率会大大增加,下面开始写出新的代码吧 主函数 /*1、封装线程基类XThread控制线程启动和停止; 2、模拟消息服务器线程,接收字符串消息&#xf…

11-JVM调优实战-1

上一篇:10-JVM调优工具详解 1.垃圾回收统计 jstat -gc pid 最常用,可以评估程序内存使用及GC压力整体情况 S0C:第一个幸存区的大小,单位KBS1C:第二个幸存区的大小S0U:第一个幸存区的使用大小S1U&#x…

HD系列边缘网关,助力工商业储能发展!

HD系列边缘网关具备低功耗、高性能、接口丰富等特点,可以实现如通信规约转换、远程调度、智能监测、通信管理等多种应用,适用于储能系统的能源管理系统。 1.1硬件接口 该产品板载瑞芯微 RK3568 处理器,可选配2G16G/432 等配置。机壳采用标准 …

zabbix使用 -- 添加监控节点、自定义监控项、触发器

目录 页面中的一些概念配置agent服务来获取目标主机数据对nginx服务器进行监控在网页中添加一台配置 自定义监控项 -- 以监控nginx为例1、开启nginx本身的统计功能2、编写脚本采集数据3、在zabbix-server里获取数据监控ssh进程监控cron进程 触发器报警1、注册一个企业微信2、微…

Spring MVC 请求映射路径的配置,实现前后端交互

目录 一、什么是请求映射路径 二、Spring MVC的请求参数 三、日期类型的参数传递 四、Spring MVC如何响应 JSON 数据 一、什么是请求映射路径 在Spring MVC中,请求映射路径(Request Mapping Path)是指与特定的请求处理方法关联的URL路径…

改善购买后客户体验的 7 种方法

购买后的客户体验涉及客户从您的品牌购买产品后的互动和体验。客户体验从第一个接触点开始,并影响他们的购买决策。但购买后的客户体验有助于留住客户并建立品牌忠诚度。这就是为什么它是您公司发展的核心。贝恩公司(Bain & Company)的研…

品牌渠道中的价值治理思路介绍

为什么要治理渠道价格? 价格的高低会影响产品的销量,间接影响品牌的发展,同时低价会存在传播性,不低价的店铺会受低价店铺的影响,为了销量会选择低价跟价,当低价链接不断增加,那渠道势必会越来…

简单聊聊Innodb崩溃恢复那些事

简单聊聊Innodb崩溃恢复那些事 Buffer Pool 整体架构Buffer Pool 管理策略redo 日志redo log fileMini-TransactionCheckPoint部分写出问题 崩溃恢复 undo日志整体结构日志格式记录格式purge回滚 总结额外参考 本文想用简单精炼的语言将Innodb崩溃恢复那些事情好好拾到拾到&…

轻松搭建自己本地专有的ChatGPT

近期发现了一个项目,它的前身是ChatGLM,在我之前的博客中有关于ChatGLM的部署过程,本项目在前者基础上进行了优化,可以基于当前主流的LLM模型和庞大的知识库,实现本地部署自己的ChatGPT,并可结合自己的知识…

Web of Science怎么用有哪些功能

Web of Science你不可不知道的数据库。作为全球最大的学术搜索引擎之一,Web of Science涵盖了众多学科领域,为科研人员提供了全面、高品质的学术资源。本文将详细介绍Web of Science的主要功能及使用步骤,希望可以帮助您更好地利用这一强大的…

揭秘人物稿件写作技巧:如何让你的文字生动起来?

如何写出一篇高质量的人物稿件,让读者沉浸其中,感受到稿件中人物的生动形象呢?本文伯乐网络传媒将从以下几个方面进行探讨:选材、结构、语言和深度。 一、选材:选取热门而有吸引力的话题或爆点 人物稿件的选材至关重要…

React 类式组件

0x00 前言 CTF 加解密合集CTF Web合集网络安全知识库 文中工具皆可关注 皓月当空w 公众号 发送关键字 工具 获取 0x01 类式组件 1.创建类式组件 这里需要注意的是需要继承一下React.Component class MyComponent extends React.Component{}实现render方法 class MyCompone…

一文带你抢先了解腾讯云AI代码助手

背景 随着近年来人工智能技术的广泛应用,各个领域和行业纷纷探索如何利用AI辅助生产与开发。软件开发者也在努力提升开发体验,借助AI的能力进行编码、调试、测试和评审。Github Copilot、Codeium、Amazon CodeWhisperer等都是这个领域的杰出代表。为了满…

关于测试的思考-质量保障体系

一、质量保障体系 1、质量保障体系说明 2、如何构建质量保障体系 3、质量保障案例 二、敏捷开发下的软件测试 1、互联网公司敏捷流程的实践 2、提升测试上线质量(质量右移): 灰度方式:根据机器,根据用户画像&#xff…

RTPV70-30、RTPV72-30电磁比例插装阀放大器

RTSP08-20、RTSP10-20、RTSP12-20、RTSP08-22、RTHSP09-30、RTPV70-30、RTPV72-30电磁比例插装阀额定电磁线圈适合连续工作,应急手控选件,外置式比例放大器,效湿式衔铁结构,可选IP69K防水E型线圈,工业通用阀孔。

vcpkg方式安装zlmediakit

主要参考: https://github.com/ZLMediaKit/ZLMediaKit/wiki/vcpkg%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85zlmediakit vcpkg的相关配置不在本文论述。很多库或源码下载不下来,通过第三方下载后放在download目录下,名称要和vcpkg期望的一致。可通过云服务器…

“五度晟企通”企业发展服务平台正式发布,帮扶企业行稳致远!

在数字中国建设的大背景下,“五度易链”以企业实际发展需求为牵引,以帮扶企业行稳致远为目标,基于全体量产业大数据,运用NLP、AI等新一代信息技术,打造了数字化ToB企业发展服务平台“五度晟企通”,旨在以数…

Java重要知识点

Java JVM 参考:https://www.kuangstudy.com/bbs/1557549426359590914 请你谈谈你对jvm的理解?Java8虚拟机和之前的变化更新?什么是OOM?什么是栈溢出StackOverFlowError?怎么分析?jvm的常见调优参数有哪些&…

大数据如何应用于业务和决策?_光点科技

大数据已经成为当今商业和决策制定中的一个关键因素。随着互联网的普及和技术的不断进步,我们生产的数据量呈指数级增长。这些数据不仅包括来自社交媒体、传感器、移动设备等各种来源的信息,还包括过去难以存储和分析的结构化和非结构化数据。如何利用这…