Jmter生成MD5 jmter使用md5 jmter使用自定义参数 jmter生成自定义参数 jmter编写java代码
1、创建一个线程组
2、创建线程组 http请求
在线程组
创建一个 http请求
3、在 http请求添加前置处理器(BeanShell)
在 http请求
添加前置处理器
(BeanShell
), BeanShell内可以编写Java代码
在 BeanShell
前置处理器里面填写以下代码
// 导入MD5加密需要用到的jar包。
import org.apache.commons.codec.digest.DigestUtils;
// 这里可以写Java代码,只要将变量通过 (map集合) vars.put(key键, 变量值) 就可以在外部组件 使用 ${key键}引用
// 示例
vars.put("testValue", "我是测试值");
// MD5加密
String sign = DigestUtils.md5Hex("123456");
//把生成的signStr提供给beanshell外部组件引用
vars.put("signStr",sign.toString());
4、请求测试 是否生效
4.1 GET请求
协议 http
服务器/IP: 随便填
端口: 随便填
HTTP请求选择 GET
路径: /随便填一个请求地址?${signStr}
&${testValue}
发起请求测试
4.2 POST请求
HTTP请求选择 POST
将自定义参数 在 消息体数据里面使用
{
"sign": ${
signStr},
"testValue": ${
testValue}
}
发起请求, 参数生效
5、BeanShell Java代码不生效问题
可能无法生效的代码
import java.util.Date;
Date date = new Date();
// 将 时间戳提供给外部调用
vars.put("time1", date.getTime());
vars.put("time2", date.getTime() + "");
vars.put("time3", new String(date.getTime()));
正确写法
import java.util.Date;
Date date = new Date();
// 将 时间戳提供给外部调用
Long time = date.getTime();
String timeStr = time.toString();
vars.put("time4", timeStr );
不同版本的jmter对应jdk不一样