龙空技术网

jmeter提取json元素并传递给后面的接口循环调用

小鱼的学习课堂 64

前言:

如今你们对“json 循环”大致比较重视,看官们都需要分析一些“json 循环”的相关文章。那么小编在网上搜集了一些关于“json 循环””的相关文章,希望兄弟们能喜欢,你们一起来学习一下吧!

背景:上一个接口返回json,里面包含多组数据,下一个接口通过获取其参数,对每组数据独立获取。

前提:提前下载json.jar和fastjson.jar包放到jmeter的lib文件夹中。

整体结构

1、首先调用上一个接口,并对其返回进行提取

JSON Path expressions采用$..['变量1','变量2'],多个变量依次

Match No 输入-1,代表提取所有

2、使用if控制器,判断是否达到返回的最大值

${__jexl3(${eMenuList_matchNr}!=0,)}

eMenuList为json提取中自定义的变量,matchNr为具体格式值

3、采用ForEach控制器,循环,开始值设置为0,结束为${eMenuList_matchNr}(与if控制台使用相同的变量)

4、使用BeanShell预处理程序

import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;String init = vars.get("emenu");// 转换JSON串JSONObject json = JSONObject.parseObject(init);String name = json.getString("name");String url = json.getString("url");vars.put("name",name);vars.put("url",url);

5、后续接口直接使用${name}即可取到相应的值。

标签: #json 循环