本文就来详细介绍一下如何利用BeanShell脚本从响应结果中提取所需参数。
成都创新互联公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!为您提供成都网站制作、成都做网站、外贸营销网站建设、成都网页设计、成都微信小程序、成都网站开发、成都网站制作、成都软件开发、app软件定制开发是成都本地专业的网站建设和网站设计公司,等你一起来见证!
在JMeter中,我们经常需要通过前一个请求的响应结果来获取一些关键信息,然后将这些信息作为参数传递给下一个请求。而使用BeanShell脚本可以很方便地实现这个过程。本文就来详细介绍一下如何利用BeanShell脚本从响应结果中提取所需参数,并将它们传递到下一个请求中。
首先,我们需要在JMeter中添加一个Sampler(比如HTTP Request),发送请求并接收响应。假设我们要从该响应结果中获取两个值:token和userId。
1. 在HTTP Request的“Response”选项卡里勾选“Save response as MD5 hash”,以便于后面查看变量名称。
2. 在HTTP Request的“Beanshell PostProcessor”选项卡里编写以下代码:
```java
import org.apache.commons.lang3.StringUtils;
String response = new String(data);
if(StringUtils.isNotBlank(response)){
vars.put("token", "");//清空旧数据
vars.put("userId", "");//清空旧数据
//解析response得到token和userId
JSONObject jsonObject = JSONObject.fromObject(response);
if(jsonObject.containsKey("data")){
JSONObject dataObject = jsonObject.getJSONObject("data");
if(dataObject.containsKey("token")){
String tokenValue = dataObject.getString("token");
vars.put("token", tokenValue);//保存新数据
}
if(dataObject.containsKey("user_id")){
String userIdValue = dataObject.getString("user_id");
vars.put("userId", userIdValue);//保存新数据
}
}
```
上述代码的作用是解析响应结果,从中提取出token和userId并将它们存储在变量中。
3. 在下一个请求(比如另一个HTTP Request)的参数化选项卡里使用变量名来引用这些值。如:${token}、${userId}
通过以上步骤,我们就可以成功地从响应结果中获取所需参数,并将它们传递到下一个请求中了。
总结:
分享题目:JMeter之BeanShell:如何取出需要的参数并传递给下一个请求
分享链接:http://www.36103.cn/qtweb/news29/8329.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联