Jmeter(十六)_beanshell实现字符串加密

Jmeter内置的没有MD5加密方法,所以需要写一些java代码实现加密功能,以下是具体操作:

1:用eclipse建个工程(包名、类名、方法名自己起)

package com.wjika.test;

import java.security.MessageDigest;

import java.security.NoSuchAlgorithmException;

public class mymd5

{ public static String getMd5(String plainText) {

try {

MessageDigest md = MessageDigest.getInstance("MD5");

md.update(plainText.getBytes());

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.append(Integer.toHexString(i));

 }

//32位加密

return buf.toString();

// 16位的加密

//return buf.toString().substring(8, 24);

 } catch (NoSuchAlgorithmException e) {

e.printStackTrace();

return null;

 }

 }

}

2:导出jar包

3::将导出的jar放到Jmeter安装目录下的lib文件夹下 4、Jmeter新建测试计划,添加线程组,新建BeanShell Sampler,并写入以下测试内容

import com.wjika.test.mymd5; String pass = mymd5.getMd5(vars.get("users")); System.out.println(pass);

添加监听器,查看结果树,运行测试,可以看到Jmeter控制台中输出了加密后的字符串