JMeter JSON Path 与 BeanShell PostProcessor配置

JMeter测试Http请求时,通常需要分析Response数据,并作为下一次Request的参数,可以使用JSON Path处理器或者BeanShell处理器

JSON Path PostProcessor

在这里插入图片描述

BeanShell PostProcessor
在这里插入图片描述

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.io.*;
import java.util.*;
try
{
	String response_data = prev.getResponseDataAsString();
	JSONArray respArray = JSON.parseArray(response_data);
	for(Iterator it=respArray.iterator();it.hasNext();)
	{
		JSONObject obj = (JSONObject)it.next();
		String newId = vars.get("instanceId");
		String instanceId = (String)obj.get("instanceId");
		if(newId.equals(instanceId))
		{
			String instWorkitemId = (String)obj.get("id");
			String instProcessId = (String)obj.get("instProcessId");
			String instActivityId = (String)obj.get("instActivityId");
			vars.put("instProcessId",instProcessId);
			vars.put("instActivityId",instActivityId);
			vars.put("instWorkitemId",instWorkitemId);
			log.info("2   instProcessId=== "+instProcessId+",instActivityId="+instActivityId+",instWorkitemId="+instWorkitemId);
		}
	}
}
catch(Exception e)
{
	log.info(e.getMessage());
}



//vars.put("result", "1234");

解析JSON需要第三方包fastjson.jar
https://pan.baidu.com/s/1gwN3zN9IBVUa5XRzs-17fQ

将fastjson-1.2.54.jar复制到JMeter/lib/ext目录下
在这里插入图片描述

使用提取的变量
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qixiang_chen/article/details/87992695