使⽤Jmeter实现参数的MD5加密登录,以及Jmeter配置参数化环境和实现参数
化登录
1 参数的MD5加密登录
原料
Jmeter,MD5算法,eclipse
java配置用户变量
准备⼯作
Jmeter没有内置的MD5加密⽅法,我从⽹上了⼀份,实现了加密功能,具体操作如下:
1. 从⽹上⼀份MD5加密算法,在eclipse中新建Java Project(项⽬名称⾃⼰起)-新建Package(包名⾃⼰起)-新建Class(类名⾃
⼰起),建好后,将下⾯的MD5算法复制到.java⽂件下,注意根据⾃⼰起的项⽬名、包名和类名修改相应代码。
st.jmeter;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Tools {
public static String getMd5(String plainText) {
try {
MessageDigest md = Instance("MD5");
md.Bytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.HexString(i));
}
//32位加密
String();
// 16位的加密
//String().substring(8, 24);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return null;
}
}
}
下图为我的eclipse截图:
2. 导出jar包
点击file->Export,出现如下弹窗,选择Java⽂件夹下的JAR file,点击Next
选择要导出的项⽬,点击Browser选择要保存的位置,并取名**.jar,点击保存,点击Finish
3. 将导出的jar放到Jmeter安装⽬录下的lib⽂件夹下,如图所⽰:
4. 在Jmeter中新建测试计划,添加线程组登录,添加取样器-HTTP请求,取名login,填写相应信息,参数⽤参数化形式填写
5. 给线程组添加前置处理器-⽤户参数,如图,将参数的正确明⽂填⼊对应参数中
6. 给线程组添加前置处理器-BeanShell PreProcessor,在BeanShell PreProcessor中写⼊以下测试内容: st.jmeter.Tools;
String pwd = ("password"));
vars.put("password",pwd);