接口测试 Jmeter 接口自动化连载 (15) - beanshell 实现字符串加密

小七的自动化课堂 · 2020年08月05日 · 1713 次阅读

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

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册