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 控制台中输出了加密后的字符串

测试开发交流群:317765580


↙↙↙阅读原文可查看相关链接,并与作者交流