接口测试基础01


(一)接口及接口测试概念

一、接口

(接口可分为:硬件接口和软件接口。我们这里只关注软件接口)
接口:是指系统或组件之间的交互点,通过这些交互点可以实现数据的交互。(数据交互的通道)

1.1 接口的类型

接口测试分类有许多种,
按照范围划分:系统之间的接口和程序内部的接口。

  • 系统之间的接口:多个内部系统之间的交互,内部系统与外部系统之间的交互。
  • 程序内部的接口:方法与方法之间,模块与模块之间的交互。

二、接口测试

接口测试:是对系统或组件之间的接口进行测试,主要是校验数据的交换、传递和控制管理过程,以及相互逻辑依赖关系。

2.1 接口测试原理

模拟客户端向服务器发送请求,服务器接收请求后进行相应的业务处理,并向客户端返回响应数据,检查响应数据是否符合预期。

  • 工具:fiddler、postman、jmeter
  • 代码:python + UnitTest 框架 + Requests 框架

2.2 接口测试的特点

  • 测试可以提前介入,提早发现 Bug,符合质量控制前移的理念。
  • 可以发现一些页面操作发现不了的问题
  • 接口测试低成本高效益(底层的一个 Bug 能够引发上层 8 个左右 Bug,接口测试可以实现自动化)
  • 不同于传统的单元测试,接口测试是从用户的角度对系统进行全面的检测。

2.3 接口测试的实现方式

  • 使用接口测试工具来实现(比如:JMeter、Postman)
  • 通过编写代码来实现(Python + Requests)

(二)HTTP 协议

一、HTTP 协议介绍

HTTP(Hyper Text Transfer Protocol):超文本传输协议,是一个基于请求与响应模式的、应用层的协议,也是互联网上应用最为广泛的一种网络协议。

1.1 HTTP 协议的特点

  1. 支持客户端 / 服务器模式
    HTTP 协议采用请求-响应模型,客户端(如浏览器)发起请求,服务器接收并处理请求后返回响应。这种模式清晰划分了功能边界,便于分布式系统的开发和维护。
  2. 简单快捷
    HTTP 协议设计简单,请求方法(如 GET、POST)和状态码(如 200、404)易于理解。报文采用纯文本格式,可读性强,减少了通信复杂性,提高了传输效率。
  3. 灵活
    HTTP 允许传输任意类型的数据,通过 Content-Type 头部字段标识资源类型(如文本、图片、视频)。支持扩展头部字段和自定义方法,适应不同应用场景的需求。
  4. 无连接
    每次 HTTP 通信完成后立即断开连接,节省服务器资源。现代通过持久连接(如 HTTP/1.1 的 Keep-Alive)优化性能,但默认仍保持无连接特性。
  5. 无状态
    协议不记录之前的请求信息,每个请求独立处理。虽提高了可靠性,但不利于会话管理,需借助 Cookie、Session 或 Token 等技术实现状态保持。

二、URL

URL(Uniform Resource Locator):统一资源定位符,是互联网上标准资源的地址。
HTTP 使用 URL 来建立连接和传输数据。

URL 格式

  • 协议
  • 域名
  • 端口
  • 资源路径
  • 查询参数

三、HTTP 请求

http 请求由三部分组成,分别是:请求行、请求头、请求体。

  • 请求行:http 请求第一行。请求方法(空格)URL(空格)协议版本
  • 请求头:语法格式:k:v
    – User-Agent:请求发送端的浏览器类型
    – Content-Type:请求体的数据类型
  • 空行:代表 http 请求投结束。
  • 请求体:请求发送时携带的数据。数据类型 Content-Type 的值。

在这里插入图片描述

在这里插入图片描述
请求方法:

  • GET:从服务器获取资源(一项或多项)
  • POST:在服务器新建一个资源
  • PUT:在服务器更新资源(客户端提供改变后的完整资源)
  • DELETE:从服务器删除资源

四、HTTP 响应

  • 响应行(状态行):协议版本(空格)状态码(空格)状态描述
  • 响应头:k:v
  • 空行:代表响应头结束
  • 响应体:绝大多数不为空。
    (请求成功:回发数据。失败:回发错误信息)

▲ 状态码:

  • 1xx:代表指示信息。表请求已经被接收,等待继续处理。
  • 2xx:代表请求成功被处理、接收。常见:200、201。
  • 3xx:重定向,待访问的资源,需求重新指定路径访问。
  • 4xx:代表客户端错误。常见:404、403。
  • 5xx:服务器端错误。

(四)接口测试流程

  1. 需求分析
    主要依据需求文档

  2. 接口文档解析
    一般是由开发人员编写接口文档(API 文档)

  3. 设计测试用例

  4. 执行测试
    使用接口测试工具实现
    通过编写代码实现

  5. 接口缺陷管理与跟踪

  6. 生成测试报告

  7. 接口自动化持续集成(可选)

接口文档结构

  • 基本信息
    – 资源路径(协议和域名在“系统信息”中)
    – 请求方法
    – 接口描述

  • 请求参数
    请求头:Content-Type
    请求体

  • 返回数据
    成功:状态码 200
    失败:错误码(自定义状态码)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值