jmeter beanShell 修改http请求参数

转自http://www.tuicool.com/articles/rEri63

在使用jmeter进行测试时,需要对上一步响应的明文参数,如userName='tom' token='%sdf%sdkdfj'之类的参数,加密一下,才能进行下一步http请求,

涉及三个问题

1、加密要引入自定义的加密函数

2、要可以拿到第一次http的响应

3、第二次http请求前,要动态构建参数

1、引入加密函数

2、在beanShell里拿上一次请求的响应

在第一个请求里 添加,后置处理器

建一个BeanShell Post Processor

//拿到响应值
String json = prev.getResponseDataAsString();

//解析后放到变量里
vars.put("userName",userName);
vars.put("token",token);

3、第二次http请求前,要动态构建参数

第二次http请求时,请求的参数值使用jmeter变量

sign=${sign}

添加,前置处理器

建一个BeanShell PreProcessor

调用加密函数进行加密后,放入变量里

String userName = vars.get("userName");
String token= vars.get("token");
String sign=encrypt(userName,token);

log.info("sign="+sign);

vars.put("sign",sign);

查看jmeter log日志

posted @ 2017-04-25 15:47  天空是我喜欢的颜色  阅读(2970)  评论(0编辑  收藏  举报