接口测试 - 了解接口测试和接口协议

文章目录

  • [1. 接口测试概念](#1. 接口测试概念)
  • [2. 接口协议](#2. 接口协议)
    • [2.1 网络模型](#2.1 网络模型)
    • [2.2 网络常见接口协议](#2.2 网络常见接口协议)
    • [2.3 HTTP 协议详解](#2.3 HTTP 协议详解)
      • [2.3.1 请求与响应基本信息:](#2.3.1 请求与响应基本信息:)
      • [2.3.2 URL 和 URI](#2.3.2 URL 和 URI)
      • [2.3.3 请求报文](#2.3.3 请求报文)
      • [2.3.4 响应报文](#2.3.4 响应报文)
      • [2.3.5 Http响应状态码](#2.3.5 Http响应状态码)
    • [2.4 Restful 架构](#2.4 Restful 架构)
  • 总结

✨✨✨学习的道路很枯燥,希望我们能并肩走下来!

编程真是一件很奇妙的东西。你只是浅尝辄止,那么只会觉得枯燥乏味,像对待任务似的应付它。但你如果深入探索,就会发现其中的奇妙,了解许多所不知道的原理。知识的力量让你沉醉,甘愿深陷其中并发现宝藏。



本文开始

1. 接口测试概念

  • 什么是接口测试呢?

    接口测试:接口测试是检查数据的交换、传递和控制管理过程;模拟客户端调用后端API接口,验证响应与预期是否一样;

  • 是什么接口?

    • 接口:不同的系统之间相互连接的部分,是一个传递数据的通道;
    • 接口分为:
      内部接口:开发写的API接口;
      外部接口:第三方接口,如:第三方登录,第三方支付;
  • 接口测试的意义是什么?

    随着系统越来越复杂,接口越来越多,测试方法成本上升,测试效率会下降;

通过分层,进行接口测试,保证服务端质量;

  • 分层测试体系: 马丁福勒大佬提出
    提出:越往UI层,发现 Bug 的时间越晚,成本越高
    接口测试(Service)相比 UI 测试,可以更早发现问题,更快的质量反馈

2. 接口协议

2.1 网络模型

OSI七层模型:书本上的-理论的,实际不是

五层体系结构:为了讲清网络原理划分的

实际使用就是TCP/IP四层模型

2.2 网络常见接口协议

接口测试必须了解常见的协议

接口传输一般使用的是HTTP/HTTPS协议

常见接口协议:

2.3 HTTP 协议详解

重点理解HTTP协议

下面是简单介绍:

重点可以看这里有详细版:点击查看 → http协议详解

2.3.1 请求与响应基本信息:

  • 请求
    • 请求行:method url protocol
    • 请求方法:GET、POST、PUT、DELETE、HEAD
    • 请求头: Host Cookie User-Agent
    • 请求参数 query
    • 请求体:JSON XML FORM
  • 响应:
    • 响应状态行
    • 响应头
    • 响应体

2.3.2 URL 和 URI

  • URI,统一资源标识符,用来唯一的标识一个资源。
  • URL,统一资源定位符,它是一种具体的 URI
  • URL 结构:https://www.douyin.com/s?modal_id=758404\&rsv_spt=1
    • 协议:https
    • 域名:https://www.douyin.com
    • 端口:跟在域名后面,域名和端口之间使用":"作为分隔符,非必须,如果省略端口部分将采用默认端口
    • 路径:/s
    • 请求参数:modal_id=758404&rsv_spt=1

2.3.3 请求报文

bash 复制代码
GET http://crl.amazontrust.com HTTP/1.1
Connection: Keep-Alive
Accept: */*
User-Agent: Microsoft-CryptoAPI/10.0
Host: crl.rootca1.amazontrust.com

请求报文:

2.3.4 响应报文

html 复制代码
HTTP/1.1 200 OK
Content-Type: binary/octet-stream
Content-Length: 651
Connection: keep-alive
Last-Modified: Tue, 16 Dec 2025 xxx GMT
x-amz-server-side-encryption: AES256
x-amz-version-id: tJQubiR8die7WGkYIiKymcACtEbvX8B6
Accept-Ranges: bytes

body

2.3.5 Http响应状态码

  • 1xx 临时响应,表示通知信息,请求收到了或正在进行处理
  • 2xx 表示成功,接受或知道了
    200 成功
  • 3xx 表示重定向,要完成请求还必须才去进一步的行动
    301 永久移动
    302 临时移动
  • 4xx 表示客户端请求错误
    403 未授权
    404 未找到
  • 5xx 表示服务端错误
    500 服务器内部错误
    503 服务不可用

2.4 Restful 架构

Restful全称:Representational State Transfer

借助于 HTTP 协议的基本请求方法代表资源的状态切换,是一种规范,可以不遵守;

通过请求查看请求类型:

GET:获取资源

POST:新增或者更新

PUT:更新资源

DELETE:删除资源

总结

✨✨✨各位读友,本篇分享到内容是否更好的帮助你理解,如果对你有帮助给个👍赞鼓励一下吧!!
🎉🎉🎉世上没有绝望的处境,只有对处境绝望的人。
🎉🎉🎉一遇挫折就灰心丧气的人,永远是个失败者。而一向努力奋斗,坚韧不拔的人会走向成功。
感谢每一位一起走到这的伙伴,我们可以一起交流进步!!!一起加油吧!!!

相关推荐
三流架构师1 天前
Illustrator教程资源合集
经验分享
讯捷蓝达1 天前
安徽寄修案例分享 IBM V3700存储无法访问 控制器node1 578报错和node2 不识别且IP不通
经验分享
字节跳动的猫1 天前
2026四款AI 部署难问题破解
经验分享
阿蔹2 天前
接口测试用例的设计方法
功能测试·接口测试·测试
Metaphor6922 天前
Java 中文 PDF 排版利器:文字对齐精讲
经验分享
浩瀚地学2 天前
【Java】集合-Collection
java·开发语言·经验分享·笔记·学习
来鼓AI2 天前
2025年获客工具3大趋势:自动化、智能化、一体化
经验分享
Teacher.chenchong2 天前
全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用
经验分享
CodeCaptain2 天前
dify的知识检索在编排中的释义与作用
经验分享·ai·dify
测试架构师北凡2 天前
超细整理,python自动化测试面试题汇总(附答案)
自动化测试·软件测试·软件测试工程师·python自动化测试·接口自动化测试·接口测试·自动化测试框架