接⼝测试 --概念与重要性

接⼝测试 --概念与重要性

接⼝的概念

接⼝⼀般来说有两种,⼀种是程序内部的接⼝,⼀种是系统对外的接⼝。

程序内部的接⼝:⽅法与⽅法之间,模块与模块之间的交互,程序内部抛出的接⼝,⽐如贴吧系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,要发帖就得登录,那么这两个模块就得有交互,它就会抛出⼀个接⼝,供内部系统进⾏调⽤。

系统对外的接⼝:⽐如你要从别的⽹站或服务器上获取资源或信息,别⼈肯定不会把数据库共享给你,他只能给你提供⼀个他们写好的⽅法来获取数据,你引⽤他提供的接⼝就能使⽤他写好的⽅法,从⽽达到数据共享的⽬的,⽐如说咱们⽤的app、⽹址这些它在进⾏数据处理的时候都是通过接⼝来进⾏调⽤的。

接⼝测试

概念

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

简⽽⾔之,所谓接⼝测试就是通过测试不同情况下的⼊参与之相应的出参信息来判断接⼝是否符合或满⾜相应的功能性、安全性要求。

其实接⼝测试很简单,⽐⼀般的功能测试还简单(⾮官⽅表述,有感⽽发),因为功能测试是从⻚⾯输⼊值,然后通过点击按钮或链接等传值给后端,⽽且功能测试还要测UI、前端交互等功能,但接⼝测试没有⻚⾯,它是通过接⼝规范⽂档上的调⽤地址、请求参数,拼接报⽂,然后发送请求,检查返回结果,所以它只需测⼊参和出参就⾏了,相对来说简单了不少。

接⼝组成

接⼝⽂档⽰例:https://developers.weixin.qq.com/minigame/dev/api-backend/open-api/access-token/auth.getAccessToken.html

接⼝⽂档应该包含以下内容:

• 接⼝说明

• 调⽤url

• 请求⽅法(get\post)

• 请求参数、参数类型、请求参数说明

• 返回参数说明

由接⼝⽂档可知,接⼝⾄少应有请求地址、请求⽅法、请求参数(⼊参和出参)组成,部分接⼝有请求头 header 。

标头 (header):是服务器以HTTP协议传HTML资料到浏览器前所送出的字符串,在标头与 HTML ⽂件

之间尚需空⼀⾏分隔,⼀般存放 cookie 、 token 等信息

header和⼊参有什么关系?它们不都是发送到服务器的参数吗?

它们确实都是发送到服务器⾥的参数,但它们是有区别的,header⾥存放的参数⼀般存放的是⼀些校验信息,⽐如cookie,它是为了校验这个请求是否有权限请求服务器,如果有,它才能请求服务器,然后把请求地址连同⼊参⼀起发送到服务器,然后服务器会根据地址和⼊参来返回出参。也就是说,服务器是先接受header信息进⾏判断该请求是否有权限请求,判断有权限后,才会接受请求地址和⼊参的。

接⼝测试重要性

接⼝其实就是前端⻚⾯或APP等调⽤与后端做交互⽤的,有⼈会问,功能测试都测好了,为什么还要测

接⼝呢?

先举个栗⼦:

⽐如测试⽤⼾注册功能,规定⽤⼾名为6~18个字符,包含字⺟(区分⼤⼩写)、数字、下划线。

⾸先功能测试时肯定会对⽤⼾名规则进⾏测试时,⽐如输⼊20个字符、输⼊特殊字符等,但这些可能只是在前端做了校验,后端可能没做校验,如果有⼈通过抓包绕过前端校验直接发送到后端怎么办呢?试想⼀下,如果⽤⼾名和密码未在后端做校验,⽽有⼈⼜绕过前端校验的话,那⽤⼾名和密码不就可以随便输了吗?如果是登录可能会通过SQL注⼊等⼿段来随意登录,甚⾄可以获取管理员权限,那这样不是很恐怖?

所以,接⼝测试的必要性就体现出来了:

• 可以发现很多在⻚⾯上操作发现不了的bug

• 检查系统的异常处理能⼒

• 检查系统的安全性、稳定性

• 前端随便变,接⼝测好了,后端不⽤变

相关推荐
PFFstronger11 小时前
Code Diff 测试覆盖分析工具 — 开发提测后,自动发现遗漏的测试点
人工智能·功能测试·ai
Anhty2 天前
2026九月最新变声器测评:iOS安卓双端适配,低延迟运行更稳定
android·人工智能·功能测试·ios·智能手机
努力搬砖的小H2 天前
FPGA应用技巧之Block Design基本使用方法
功能测试·fpga开发·zynq·block design
岁月失语唯石能言3 天前
《 Web项目测试实战:博客系统的功能/接口/自动化/性能全流程测试报告》
自动化测试·功能测试·selenium·jmeter·接口测试·压力测试·性能测试
PhotonixBay3 天前
InGaAs微透镜3D形貌怎么测?共聚焦显微镜在光通信的应用实践
功能测试·测试工具·3d·测试标准
Bug 挖掘机3 天前
网传阿里天猫超市技术近期迎来调整,前端和测试团队合并为“智能交付”团队
自动化测试·软件测试·功能测试·测试开发·ai测试
慧都小项4 天前
汽车工具链重复测试太耗人?用 TestComplete 自动跑
功能测试·回归·汽车·嵌入式·软件工程·测试覆盖率
新知图书5 天前
9.4 功能测试与效果验证
人工智能·功能测试