Jmeter4 BeanShell 使用json校验
填写参数的地方在Jmeter中,使用Bean shell是,内置变量:
log:写入信息到jmeber.log文件,可以使用log.info(对象);
ctx:该变量引用了当前线程的上下文,使用方法可参考官网说明,常用:getSamplerContext
vars:定义的变量
vars.get(字符串):获取定义变量对应的值,含BeanShell脚本生成变量;
vars.put(字符串,字符串):生成新的变量或修改已存在的变量;
props:jmeter.properties中定义变量对应值;
props.get(字符串):获取值
props.put字符串,字符串):输入值
prev:获取前面的sample返回的信息,常用方法:
getResponseDataAsString():获取响应信息
getResponseCode() :获取响应code
bsh.args[序号]:获取参数的值,位置在
这些都是基本知识,下面说一下,不用试另外的jar包,进行json的操作:
首先导入
import net.minidev.json.JSONArray;
import net.minidev.json.JSONObject;
import net.minidev.json.JSONValue;
读取json
字符串转json
Object obj=JSONValue.parse(a);
JSONArray array=(JSONArray)obj; 或者JSONObject o2= (JSONObject) obj;
获取json的list中的值
array.get(序号),例如:JSONObject qidj= (JSONObject) array.get(序号);
获取json对象的值
o2.get(字符串),例如:String qid=qidj.get("id").toString();
生成json
StringBuffer strBuffer = new StringBuffer("");
JSONValue.writeJSONString(map或者list, strBuffer);
或者
JSONObject obj =new JSONObject();
obj.put(?,?)
JSONValue.toJSONString(obj);
以上验证可用~