jmeter-9-断言之JsonSchema(超推荐)

前言

JsonSchema 一般使用对json数据的格式验证,但是作为测试同学来说大部分可能是自定义断言有些数据结构无法校验,那么它将可以帮你来完成。

而且非常不错,业界也有许多打着“锲约测试”的旗号并不是虚吹的。

官网介绍的用途

  • 描述您现有的数据格式。
  • 提供清晰的人类和机器可读文档。
  • 验证对以下有用的数据:自动化测试、确保客户提交数据的质量

 Json Schema官网:http://json-schema.org

更多插件请查阅安装:https://jmeter-plugins.org/downloads/old

一、下载相关的 jar 包

1、我已打包好,下载链接:https://pan.baidu.com/s/1Vhi1fZVv-wZo03FC4HD_uw
提取码:e3l8

2、放在 lib/ext 目录下,重启jmeter

 二、使用 JSON Schema Assertion

1、在http请求右键-添加-断言-JSON Schema Assertion

 2、生成返参 Schema

1)打开该网站:https://json-schema-inferrer.herokuapp.com/

2)将接口正常返回的参数粘贴文本框中

 3)复制 Schema 到 Jmeter Schema 即可

PS:Jmeter Schema(说明:使用文件模板时,将不会使用输入框中的模板。二者只能二选一)

三、测试 demo

1、假设接口正常返参为:{"data":"OK","retCode":"0"}

2、我们将 Schema 断言写入:

复制代码
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "data": {
      "type": "string"
    },
    "retCode": {
      "type": "string"
    }
  }
}
复制代码

3、运行,正常没有问题,那如果返参格式变了呢?

 4、返参结果变化,比如 data 返回了 object 对象。

返参:{"data":{"OK":null},"retCode":"0"}

 这时候可以看到断言失败了,再看看提示,很清楚地知道期望它是 string,但找到的是 object

 

 欢迎来大家QQ交流群一起学习:482713805,博主微信+:gogsxl

posted @   广深-小龙  阅读(179)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2021-07-31 MySQL-2-如何制造百万千万级+数据
点击右上角即可分享
微信分享提示