JMeter 教程:JSON 断言的简单介绍

目录

[JMeter 教程:JSON 断言的简单介绍【快速上手】](#JMeter 教程:JSON 断言的简单介绍【快速上手】)

[✅ 什么是 JSON 断言?](#✅ 什么是 JSON 断言?)

[🛠️ 使用前提](#🛠️ 使用前提)

[📄 JSON 断言添加步骤](#📄 JSON 断言添加步骤)

[步骤一:添加 JSON Assertion](#步骤一:添加 JSON Assertion)

[📌 示例说明](#📌 示例说明)

[✅ 常用 JSONPath 写法速查](#✅ 常用 JSONPath 写法速查)

[✅ 断言结果查看](#✅ 断言结果查看)

[📌 小技巧](#📌 小技巧)

[✅ 总结](#✅ 总结)


在接口测试中,光看到接口返回"200 OK"是不够的,我们还需要判断接口是否真的返回了 正确的数据内容 。这时候,JMeter 的 JSON 断言(JSON Assertion) 就派上用场了。

本文将带你快速了解如何使用 JSON 断言判断接口返回的字段值是否符合预期。


✅ 什么是 JSON 断言?

JSON 断言是 JMeter 用于验证响应结果中的 JSON 数据的工具。

它可以:

  • 判断某个字段是否存在

  • 判断字段值是否等于某个值

  • 判断返回结构是否包含指定路径

适用于所有返回 JSON 格式的接口(比如 RESTful API)。


🛠️ 使用前提

  • 你正在测试的接口返回 JSON 格式响应(例如登录接口、查询接口)

  • 已添加 HTTP 请求 + 查看结果树组件


📄 JSON 断言添加步骤

步骤一:添加 JSON Assertion

  1. 右键你的 HTTP 请求 → AddAssertionsJSON Assertion

  2. 配置 JSON 断言项:

选项名 含义
JSON Path 要断言的字段路径(使用 $ 表示根)
Expected value 期望值(要和实际值一致)
Assertion Type 一般选择 ==(等于)
Validate 是否启用断言

📌 示例说明

假设你请求某个登录接口,返回如下 JSON:

java 复制代码
{
  "code": 200,
  "msg": "登录成功",
  "data": {
    "token": "abc123"
  }
}

你可以添加如下 JSON 断言:

JSON Path Expected Value
$.code 200
$.msg 登录成功

这样 JMeter 会自动断言返回值中是否包含这些字段,并且值是否一致。


✅ 常用 JSONPath 写法速查

JSON 结构 JSON Path 示例 说明
{"a": 1} $.a 取出 a 的值
{"data": {"token": "x"}} $.data.token 取出嵌套字段 token
{"list": [1,2,3]} $.list[0] 取数组第 1 项

✅ 断言结果查看

运行测试后:

  • 如果断言通过,响应结果是绿色 ✅

  • 如果断言失败,结果树会显示错误信息,便于快速定位问题 ❌


📌 小技巧

  • 断言失败不会终止整个测试计划,但可以通过设置 **"断言结果控制器"**来捕捉失败项

  • 你可以添加多个 JSON 断言,对多个字段进行验证

  • 对于布尔值、数字、字符串都可以断言,只要和 JSON Path 匹配即可


✅ 总结

项目 说明
工具组件 JSON Assertion
适用场景 接口返回为 JSON 格式
常用用途 验证字段值、存在性
配合组件 HTTP 请求 + 查看结果树

JMeter 的 JSON 断言功能强大又好用,是接口测试中必不可少的"真值校验"工具。掌握它,你就能真正验证接口的返回逻辑是否正确。


相关推荐
包达叔1 天前
仿NewLife的XmlConfig类实现Json配置文件
c#·json·newlife
爱吃香蕉的阿豪3 天前
.NET Core 中 System.Text.Json 与 Newtonsoft.Json 深度对比:用法、性能与场景选型
数据库·json·.netcore
千叶寻-3 天前
package.json详解
前端·vue.js·react.js·webpack·前端框架·node.js·json
睿麒4 天前
鸿蒙app开发中 拿到json文件数据进行动画的播放
json
1314lay_10074 天前
使用HTTP接口,对接外围系统,封装调用跟推送类和动态转换json,动态编程和动态调用函数
http·json·abap
老坛程序员5 天前
抓包解析MCP协议:基于JSON-RPC的MCP host与MCP server的交互
人工智能·网络协议·rpc·json·交互
ZoeLandia5 天前
Vue 项目 JSON 在线编辑、校验如何选?
前端·vue.js·json
新知图书5 天前
JMeter的取样器
jmeter
小蝙蝠侠5 天前
JMeter 执行流程
java·jmeter