看了很多文章,就这篇说明白了什么是接口测试!

接口(API)是一个简称,全名叫应用程序编程接口(Application Programming Interface),是一些预先定义的函数。目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

工作中的接口如打电话的按键,电梯中的楼层按键,开车时脚踩油门,接口就是一个位于复杂系统之上并且能简化你的任务,它就像一个中间人让你不需要了解详细的所有细节,我们今天要讲的Web API就是这么一类东西。

例如百度搜索,它提供了搜索接口,简化了你的搜索任务

越底层发现bug,它的修复成本是越低的,接口属于金字塔模型 的中间层,属于收益产出比最高的

金字塔模型

前端随便变,接口测好了,后端不用变

检查系统的安全性,稳定性

系统复杂度上升,传统测试方法成本加大,效率降低,接口可以 解决这个问题

前后端框架分离,从安全层面说

只依赖前端进行验证已经不能满足安全的需求,因为绕过前 端太容易,要对接口做控制,做相应的校验

前后端传输,日志打印等信息是否加密传输也是需要验证的,特别是密码,身份证,银行卡信息等。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

接口测试的原理是什么呢?

测试人员可以借助工具模拟客户端向服务器端发送请求报文,服务器端接收请求报文后,对相应的报文做出处理并向客户端返回应答,工具模拟客户端接收应答,然后测试人员检查应答是否准确,这就是接口测试的原理

接口测试的范围有哪些呢?

关于接口的测试的范围,主要从以下两个方面进行介绍。

1、是否所有的接口都需要测试?

随着系统复杂度越来越高,接口越来越多,想完全覆盖所有接口是一件很困难的事情。

通常情况下,主要测试最外层的两类接口:数据进入系统的接口(调用外部系统的参数为本系统使用)和数据流出系统的接口(验证系统处理后的数据是否正常)

2、被测接口需要测试哪些方面?

测试人员需要关注被测接口的功能是否实现,性能是否达标,安全性是否满足,重点关注数据的交换,传递,处理次数以及控制管理的过程。

接口的分类?

依据所遵循协议的不同,常见接口可以分为以下三类。

HTTP接口,他是基于超文本传输协议开发的接口,但并不能排 除没有使用其他协议

WebService接口,他是系统对外的接口,比如你要从别的网站或服务器上获取资源,一般来说,别人不会把数据共享给你的,他们会提供一个他们写好的方法,让外部人员获取数据,从而达到数据同步的目的。

RESTful接口,简称REST其描述了一个架构样式的网络系统,核心是面向资源。REST专门针对网络应用设计和开发方式,降低开发的复杂性,提供系统的可伸缩性。

基于B/S架构的软件系统接口大多数为HTTP接口

接口测试流程?

1、编写接口测试计划

接口测试计划跟功能测试计划是一样的,都是为了确认是否满足需求,确定测试环境及测试计划,为设计测试用例做准备,一般来说,接口测试计划包含概述,测试资源,测试功能及重点,测试策略,测试风险及测试标准

2、编写,评审接口测试用例

根据需求文档,接口文档写测试用例,然后开发,测试一起评审测试用例是否符合需求和相关要求。下面的图里面的内容可以供大家写测试用例的时候参考。

3、执行接口测试

执行接口测试的时候,可以借助已经开发好的工具,如比较主流Jmeter,Postman,SoapUI,或者直接自己写代码进行相应的接口测试。

4、接口自动化测试持续集成

第一,流程方面,在回归阶段加强异常场景的覆盖,并逐步向系统测试,冒烟测试阶段延伸,最终达到全流程自动化。

第二,结果展示,更加丰富的结果展示,趋势分析,质量统计和分析等

第三,问题定位,报错信息,日志更精准,方便问题复现与定位

第四,结果校验,加强自动化校验能力,如数据库信息校验。

第五,代码覆盖率,不断尝试由目前的黑盒向白盒下探,提供代码覆盖率。

第六,性能需求,完善性能测试体系,通过自动化的手段监控接口性能指标是否正常

小编今天就介绍到这里,希望对你有所帮助,如果大家有什么补充的可以留言,互相探讨(^U^)ノ~Y

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

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

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

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

相关文章

进腾讯工作一个月,我想辞职了......

前几天,我在网上看到一个微博。 一个应届的校招生,目前入职腾讯,工作了一个月。这一个月给他的感受是大量的写测试用例,自己写测试用例的能力熟练了不少,测试技能倒是没有多大的提高,真正需要技术的工作却…

深入理解MySQL中的MVCC(多版本并发控制)

在MySQL中,MVCC是一种用于提供并发控制的技术,它允许数据库系统在事务并发执行的情况下保持数据的一致性,同时提高了数据库的并发性能。MVCC背后的理念是允许每个事务可以看到一个一致性的快照,从而避免了读取操作被写入操作所阻塞…

存储引擎的简介

简介: 1.在mysql存储引擎可以说就是指表的类型,可以称为表处理器,以表的形式存储。 2.他的功能就是接收上层传下来的指令,然后对表中的数据进行提取写入操作。 目的: 为了管理方便,我们把连接管理&#xf…

【漏洞复现】Salia PLCC cPH2 远程命令执行漏洞(CVE-2023-46359)

0x01 漏洞概述 Salia PLCC cPH2 v1.87.0 及更早版本中存在一个操作系统命令注入漏洞,该漏洞可能允许未经身份验证的远程攻击者通过传递给连接检查功能的特制参数在系统上执行任意命令。 0x02 测绘语句 fofa:"Salia PLCC" 0x03 漏洞复现 ​…

微信小程序开发系列(十八)·wxml语法·声明和绑定数据

目录 1. 双大括号写法用法一:展示内容 步骤一:创建一个data对象 步骤二:双大括号写法的使用 步骤三:拓展 2. 双大括号写法用法二:绑定属性值 步骤一:给对象赋一个属性值 步骤二:双大括…

Cocos Creator 2d光照

godot游戏引擎是有2d光照的,用起来感觉还是很强大的,不知道他是怎么搞的,有时间看看他们怎么实现的。 之前一直以为cocos社区里面没有2d光照的实现,偶然看到2d实现的具体逻辑,现在整理如下, 一&#xff1…

webpack5零基础入门-2wepack配置项的了解

在使用webpack之前,我们需要对webpack的配置项有一定的认识。 1.五大核心概念 1.entry(入口) 指示webpack从哪个文件开始打包 2.output (输出) 指示webpack打包完的文件输出到哪里,如何命令等 3.loader(加载器) webpack本身只能处理js…

Linux——文件重定向

目录 前言 一、重定向 二、重定向的运用 三、dup2 四、命令行中的重定向 五、为什么要有标准错误 前言 在之前我们学习了文件标识符,直到close可以使用文件标识符进行关闭,但是当我们关闭1号(stdout)时,无法往显…

Thingsboard学习杂记

知识杂记 1.遵循磁盘绑定的内存数据库和遵循磁盘支持的内存数据库 遵循磁盘绑定的内存数据库和遵循磁盘支持的内存数据库有不同的工作方式,它们的优点和缺点也不同。 遵循磁盘绑定的内存数据库的优点: 数据库可以支持更大的数据集合,因为数…

springboot整合shiro的实战教程(一)

文章目录 1.权限的管理1.1 什么是权限管理1.2 什么是身份认证1.3 什么是授权 2.什么是shiro3.shiro的核心架构3.1 Subject3.2 SecurityManager3.3 Authenticator3.4 Authorizer3.5 Realm3.6 SessionManager3.7 SessionDAO3.8 CacheManager3.9 Cryptography 4. shiro中的认证4.1…

贝叶斯优化CNN-LSTM回归预测(matlab代码)

贝叶斯优化CNN-LSTM回归预测matlab代码 贝叶斯优化方法则采用贝叶斯思想,通过不断探索各种参数组合的结果,根据已有信息计算期望值,并选择期望值最大的组合作为最佳策略,从而在尽可能少的实验次数下达到最优解。 数据为Excel股票…

JS直接量及其相关对象

什么是直接量 直接量是指不需要创建对象就可以直接使用的变量。ES中的直接量主要有三种类型:表示字符串的string类型、表示数字的number类型和表示true/false的boolean类型。当我们直接将值赋给变量后,ES就会自动判断其类型,而且当参数发生变…