jmeter接口自动化测试中:参数的获取与传递
之前有学过java代码,所以忘记不重要可以百度,敲几行代码来实现些简单的数据处理
在jmeter的请求的后置处理器中选择beanshell处理器,写些简单代码还是很容易的。
但对于jar包的调用遇到了些麻烦:把jar包放进了lib文件中,重启jmeter,在beanshell中,使用jsonArray.getJSONObject()报错没有该方法
各种查找后,在测试计划中添加以下jar包路径,并把jar包放在lib/ext目录下
接着:在beanshell编辑器中import引入要使用的jar包
在beanshell编辑器中import引入要使用的jar包
执行请求后,对于响应数据的获取:
String a = prev.getResponseDataAsString();返回String字符串
将其转为json格式:
JSONObject json = JSONObject.parseObject(a)
获取对象中的键对应的值:json.get("键名"); json.get("键名").get("键名");
将其转为array数组格式:
JSONArray arr = JSONArray.parseArray(a);
通过JSONObject json = JSONjson.getJSONObject(下标值)来获取对应的下标对象。
把对象添加在array数组里:arr.add(json);
String arr6 = arr.toString();
jmeter中给自定义的变量赋值:赋的值必须是字符串类型
vars.put("arr6",arr6 );将对象转成字符串:String.valueOf(jsonData.get("data").get("data"));
上边自定义的变量arr6,在另外的接口请求中作为请求参数使用:
比如是
第2种:为请求取样器添加 json提取器: