Jmeter实现对字符串加密


最近测试移动端接口,但是请求内容是用MD5加密的,所以要先对请求内容进行加密,Jmeter内置的没有MD5加密方法,所以自己从网上copy了一份,实现了加密功能,以下是具体操作: 
1、从网上copy了一份MD5加密方法,用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; } } }

 

eclipse截图:

eclipse中截图

2、导出jar包

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

运行结果

以上,已经实现了字符串的加密,如果想加密自定义变量,可如下:
在测试计划中添加用户自定义变量:

用户自定义变量

BeanShell Sampler中使用自定义变量users,加密后保存

加密保存

添加一个http请求,测试加密保存的sign是否可用

请求测试

运行,查看测试结果:

验证


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM