jmeter beanshell判断响应的json值是否正确;
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了jmeter beanshell判断响应的json值是否正确;,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2154字,纯文字阅读大概需要4分钟。
内容图文
题目,如上图;
采用beanshell postprocessor结合fastjson库的方法;
先配置环境,我用的是jmeter 5.11,fastjson用到的1.2.68的版本;需要将fastjson.jar包放到jmeter的安装路径的lib\ext库中,并且在jmeter的Test Plan中引用这个jar包;
BeanShell Sampler构造json响应结果;代码如下;
return "{\"Status Code\":200,\"ret\":{\"id\":\"id\",\"imageList\":[{\"originUrl\":\"图片链接1\",\"originWidth\":200,\"originHeight\":300},{\"originUrl\":\"图片链接2\",\"originWidth\":300,\"originHeight\":300}]}}"
BeanShell PostProcess代码如下;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; String rs = prev.getResponseDataAsString();//获取响应结果 JSONObject aa = JSON.parseObject(rs);//整个响应结果作为JSON对象; JSONObject ret=aa.getJSONObject("ret");//获取某一部分对象。即,json串中{}的内容; JSONArray imageList=ret.getJSONArray("imageList");//获取列表。即json串中的[]的内容; log.info("结果:"+imageList); //不能写成log.info(imageList);这样会报错;需要加字符串; boolean result; for(int i=0;i<imageList.size();i++){ String x=imageList.getJSONObject(i).getString("originHeight"); String y=imageList.getJSONObject(i).getString("originWidth"); log.info(x+" "+y);//查看结果; if(!(x.equals("300")) || !(y.equals("200"))){//注意整数需要使用"括起来,作为字符串; log.info("第"+(i+1)+"项服务器返回结果不正确"); result=true; } } if(!result){ log.info("服务器返回结果正确"); }
com.alibaba的fastjson简介
fastjson是一个Java语言编写的高性能功能完善的JSON库。
常用api;
1.String JSON.toJSONString(Object object) //将对象序列化成json字符串;//我认为String代表类型;可以使用String类型的变量去接收这个值;
2.JSONObject JSON.parseObject(String text) //将json字符串反序列化成JSON对象;
3.JSONArray JSONObject.getJSONArray(String key) //根据key得到json中的json数组;
4.JSONObject JSONArray.getJSONObject(int index) //根据下标拿到json数组的json对象;
5.String JSONObject.getString(String key) //根据key拿到json的字符串值;
6.int JSONObject.getIntValue(String key) //根据key拿到json的int值;
7.boolean JSONObject.getBooleanValue(String key) //根据key拿到json的boolean值;
参考:https://www.cnblogs.com/qiaoyeye/p/7730288.html
内容总结
以上是互联网集市为您收集整理的jmeter beanshell判断响应的json值是否正确;全部内容,希望文章能够帮你解决jmeter beanshell判断响应的json值是否正确;所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。