Jmeter BenaShell 实现参数加密
在很多场景下,前后端的交互都是需要参数加密的,当我们做接口测试时,也将面临这参数的加密,Jmeter 提供了良好的支持,可以通过自定义依赖,然后再BeanShell 内直接写代码进行参数的加密操作,本文将讲解,如何通过自定义依赖来实现交互上的参数加密!!!
如果大家有其他的问题可以联系小编:微信 372787553
自定义Jar
本文有Idea 为工具,其他的工具也时类似的
-
创建JavaEE 项目
项目名称随意,本文将写一个RSA的算法
类似的算法有很多,网上也有很多,小编这里就不过多的展示了,切记一定要在本类里写一个main方法
-
项目打包
-
引入Lib Jar
引入的方式有很多种,小编就不一一列举了,小编采用的是,直接在测试计划引入,如果 在后续发现,引入的依赖不可用,大家可尝试重启一下Jmeter
-
BeanShell 使用自定义的工具
创建一个BeanShellPreProcessor
import com.rsa.*;
import java.security.PrivateKey;
import java.security.PublicKey;
// 从环境变量里获取用户名密码
String name = vars.get("username");
String password = vars.get("password");
// 自定义Lib内的方法
PublicKey publicKey = RSAUtil.getPublicKey("123");
String newUserName = RSAUtil.encryptString(publicKey, name);
String newPassword = RSAUtil.encryptString(publicKey, password);
// 再次写入导环境变量内,方便后续使用
vars.put("newUserName",newUserName);
vars.put("newPassword",newPassword);
// 打印日志,方便调试与查看
log.info("newUserName ====》"+newUserName);
log.info("newPassword ====》"+newPassword);
效果如下: