apache jmeter 接口
接口测试的目的:
核心目的是在软件开发生命周期早期发现缺陷、降低修复成本,并通过验证系统组件间的交互来提升整体稳定性、安全性和效率,尤其适用于前后端分离、微服务架构及高复杂度系统。
接口测试的优点:
接口测试相对容易实现自动化持续集成,且相对 UI 自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。
一、JMeter 主要元件及功能
共介绍 10 类核心元件,是构建测试计划的基础,各元件功能与定位明确,具体如下:
元件名称 核心功能 关键说明
测试计划 测试起点与容器 所有测试元件均需置于其下,相当于 “空白项目”
线程组 模拟用户并发 每个线程代表 1 个虚拟用户,可设置线程数、启动时长、循环次数
配置元件 维护 Sampler 配置 如 HTTP Cookie 管理器存储 Cookie、HTTP 请求默认值预设服务器 IP / 端口,简化后续请求配置
前置处理器 请求前预处理 常用于修改请求设置,仅对作用域内 Sampler 生效
定时器 控制请求间隔 定义 Sampler 之间的延迟时间,确保请求发送节奏符合测试需求
取样器(Sampler) 发送请求与记录数据 测试最小单元,支持 HTTP、FTP、TCP、JDBC 等多种请求类型,记录响应信息与响应时间
后置处理器 请求后处理 常用功能为提取返回值,如通过正则 / JSON 提取器获取响应中的关键数据
断言 验证响应结果 判断接口返回是否符合预期,支持响应文本、响应代码、响应头等式校验
监听器 收集与展示结果 以特定形式呈现测试数据,常用有查看结果树(树状展示请求 / 响应)、聚合报告(统计样本数 / 平均值等)、图形结果(可视化趋势)
逻辑控制器 自定义请求逻辑 与 Sampler 结合,模拟复杂请求序列,如循环、条件判断等
二、JMeter 元件作用域与执行顺序
- 元件作用域
核心原则:基于元件在测试计划中的层次结构判断,父级元件作用域包含子级元件。
具体规则:配置元件影响作用域内所有元件;前置 / 后置处理器、定时器、断言、监听器仅对作用域内 Sampler 生效(无 Sampler 时不执行)。 - 执行顺序
固定执行流程为:配置元件→前置处理器→定时器→取样器→后置处理器→断言→监听器。若同一作用域内有多个同类型元件,按上下顺序依次执行。
三、JMeter 接口测试完整流程(7 步) - 创建测试计划
打开 JMeter,默认生成 “测试计划”,作为后续所有元件的容器。 - 添加线程组
路径:右键 “测试计划”→添加→线程(用户)→线程组。
配置关键参数:
线程数:虚拟用户数量,如设置 20 代表 20 个并发用户。
Ramp-Up 时间:所有线程启动总时长,如 20 线程、10 秒启动时长,即每秒启动 2 个线程。
循环次数:每个线程发送请求的次数,勾选 “永远” 则持续发送至手动停止。 - 添加 HTTP Cookie 管理器
路径:右键 “线程组”→添加→配置元件→HTTP Cookie 管理器。
功能:模拟浏览器存储 Cookie,同源站点后续请求可自动复用 Cookie。 - 添加 HTTP 请求默认值
路径:右键 “线程组”→添加→配置元件→HTTP 请求默认值。
配置:填写 “服务器名称或 IP”“端口号”,后续 HTTP 请求无需重复填写该信息。 - 添加 HTTP 请求(Sampler)
路径:右键 “线程组”→添加→Sampler→HTTP 请求。
核心配置:
基础信息:协议(HTTP/HTTPS)、方法(GET/POST/PUT 等)、路径(接口 URL 不含服务器地址部分)。
参数设置:通过 “同请求一起发送参数” 添加 URL 参数(键值对形式),POST 请求可在 “消息体数据” 填写 JSON 等请求体。 - 添加响应断言
路径:右键 “HTTP 请求”→添加→断言→响应断言。
关键配置:
作用范围:默认选 “Main sample only”(仅作用于主请求)。
测试字段:常用 “响应文本”(校验返回 JSON)、“响应代码”(如 200 代表成功)。
模式匹配规则:“包括”(响应含目标内容即成功,支持正则)、“相等”(完全匹配,大小写敏感)等。
测试模式:添加需校验的目标数据,如响应代码 “200”、响应文本 “success”。 - 添加监听器
路径:右键 “线程组”→添加→监听器→选择所需类型(如查看结果树、聚合报告、图形结果)。
作用:执行测试后,通过监听器查看请求是否成功(绿色代表成功、红色代表失败)、响应数据、性能指标(如平均响应时间)。
浙公网安备 33010602011771号