首页 > 系统相关 >Jmeter BeanShell处理JSON响应

Jmeter BeanShell处理JSON响应

时间:2023-01-05 16:58:20浏览次数:36  
标签:JSONArray text json lineCodes 列表 JSON BeanShell line Jmeter

一:Json响应如下:

二:添加beanshell后置处理器

 

 

三:Json处理代码如下:

import com.alibaba.fastjson.*;

public static String line_code_list(String json_text)
{
   JSONObject object = JSONObject.parseObject(json_text);                                                 //定义json对象
   JSONObject data = object.getJSONObject("data");                                                           //获取json主节点名称
   JSONArray lineList = data.getJSONArray("lineList");                                                         //获取主节点下列表
   JSONArray lineCodes = new JSONArray();                                                                       //创建一个列表对象
   for(int i=0;i<lineList.size();i++){                                                                                       //遍历lineList
       JSONArray lines = lineList.getJSONObject(i).getJSONArray("lines");                         //定义一个主线列表,循环获取lines
       for(int j=0;j<lines.size();j++){                                                                                     //遍历lineList下的lines列表
           JSONObject line = lines.getJSONObject(j);
           lineCodes.add(line.getString("value"));                                                                //将主线线路id添加到lineCodes列表
           if(line.containsKey("branch_line")){                                                                     //如果主线下包含支线
               JSONArray branch_line = line.getJSONArray("branch_line");                        //定义一个支线列表
               for(int k=0;k<branch_line.size();k++){
                   lineCodes.add(branch_line.getJSONObject(k).getString("value"));
               }
           }
       }
   }
   return lineCodes.toJSONString();
}

String json_text=prev.getResponseDataAsString();                                                //获取响应内容
vars.put("line_code",line_code_list(json_text));                                                     //传入json列表共jmeter使用

 

四:提取结果如下

 

标签:JSONArray,text,json,lineCodes,列表,JSON,BeanShell,line,Jmeter
From: https://www.cnblogs.com/wu1378/p/17028040.html

相关文章

  • 前端利用formData格式进行数据上传,前端formData 传值 和 json传值的区别?
    前端利用formData格式进行数据上传,前端formData传值和json传值的区别? contentType常见的格式text/plain:纯文本格式application/json:JSON数据格式application/......
  • JSON.stringify踩坑
    JSON.stringify将忽略所有未定义的对象属性。constuser={name:'Stanko',phone:undefined};user.phone;//->undefinedconststringifiedUser=JSON.stringi......
  • 一步一步学爬虫(4)数据存储之JSON存储
    (一步一步学爬虫(4)数据存储之JSON存储)4.2方便灵活的JSON文本文件存储  JSON,全称为JavaScriptObjectNotation,也就是JavaScript对象标记,它通过对象和数组的组合......
  • JSON(C++)
    JSON库​​https://github.com/open-source-parsers/jsoncpp​​​​解决jsoncpp中文乱码问题_weruoaszxcvnm的博客​​jsoncpp中文字符串被转为uuf8的解决办法-走看看......
  • jmeter 使用 ServerAgent 监控服务器
    下载、安装、运行插件(1)下载插件在Jmeter官网上下载插件管理器Plugins-manager.jar将JAR包放入到lib\ext目录下重启Jmeter,可以在选项下看到【选项】-PluginsManager......
  • 使用Jmeter轻松实现AES加密测试
    每天进步一点点,关注我们哦,每天分享测试技术文章本文章出自【码同学软件测试】码同学公众号:自动化软件测试,领取资料可加:magetest码同学抖音号:小码哥聊软件测试大家在自......
  • 使用Jmeter读取和使用Redis数据
    前言消息队列和缓存是目前主流的中间件,我们在日常测试过程中,无论是接口还是压力测试,都会遇到需要处理这些中间件数据的情况。本文以Redis对缓存做一个简单的介绍,并基于Jme......
  • 2023年实时最新中国省市区县街道级geoJSON格式地图数据Echarts地图数据联动数据下载
    发现个可以免费下载全国 geojson 数据的网站,推荐一下。支持全国、省级、市级、区/县级、街道/乡镇级以及各级的联动数据geojson数据下载地址:https://geojson.hxkj.vip......
  • Json-Tutorial03 字符串解析
    前言学习了Json字面量解析和数值解析后,本节我们将完成Json的单个字符串解析。Json中的字符串是以""修饰的。代码设计1.编写lept_get_boolean()等访问函数的单元测试,......
  • python中数据类型与json的序列化和反序列
    |JSON|Python||-------------------|------------||object|dict(集合)||array|list列......