如何使用Jmeter获取及引用token--后置处理器-Beanshell PostProcessor
使用场景:如:登录接口A返回Token,下一接口B必须要先传登录接口的Token才可以访问
第一种:取出data(token值)

第二种:取出data(token值),在data下提取token

1.下载org.json.jar,将地址配置在测试计划中,参考

2.在登录接口A中添加Beanshell PostProcessor,在Script中输入以下代码:
---第一种代码
//先引入Jar包
import org.json.*;
log.info("====tokenk开始=====");
//获取请求返回值。赋予字符串String 变量
String response = prev.getResponseDataAsString();
//将string的值转换成成 Jsonobject 对象
JSONObject data_obj= new JSONObject(response);
//获取Json中 token的值
String token= data_obj.get("token").toString();--直接获取token
//将获取到的token值赋予变量
vars.put("token",token);
//打印token的值
log.info("====token====="+token);
log.info("====tokenk结束=====");
---第二种代码
//先引入Jar包
import org.json.*;
log.info("====tokenk开始=====");
//获取请求返回值。赋予字符串String 变量
String response = prev.getResponseDataAsString();
//将string的值转换成成 Jsonobject 对象
JSONObject data_obj= new JSONObject(response);
//获取Json中 token的值
JSONObject data= data_obj.get("data");
String token= data.get("token").toString();
//将获取到的token值赋予变量
vars.put("token",token);
//打印token的值
log.info("====token====="+token);
log.info("====tokenk结束=====");
3.引用方式为:${__P(变量名称,)},如 ${__P(Token,)}

浙公网安备 33010602011771号