jmeter压测学习39-获取post请求x-www-form-urlencoded格式的数据
前言
post请求的参数有一些是json格式,也有一些是x-www-form-urlencoded格式,前面讲签名的时候获取到post请求的是json格式。
本篇继续讲x-www-form-urlencoded格式的请求body如何获取到。
x-www-form-urlencoded
在请求头部添加Content-Type类型为x-www-form-urlencoded
定义用户变量,账号和密码
post请求参数填写键值对
BeanShell 预处理程序
添加-前置处理器-BeanShell 预处理程序
使用 getArgumentsAsMap() 方法获取键值对的请求body
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.config.Argument;
import org.json.JSONObject;
import org.json.JSONArray;
import org.apache.commons.codec.digest.DigestUtils; //导入md5加密的包
Arguments arguments = sampler.getArguments();
Map reqMap = arguments.getArgumentsAsMap();
log.info("------------------------body------------------");
for (String key : reqMap.keySet()) {
log.info("key: " + key + ",value: " + reqMap.get(key));
}
log.info(reqMap.get("username"))
查看运行结果
结果数可以查看请求头部参数类型
请求body数据:username=test&password=123456