Jmeter BeanShell调用Java方法加密

1、添加BeanShell前置处理器

由于请求接口时,会传加密参数。加密过程会在请求之前完成,所以需要使用前置处理器中beanshell preprocessor

2、编写BeanShell脚本

①定义一个beashell变量:phoneNum,在Beanshell中可以直接调用Jmeter中的内置函数

复制代码
String phoneNum = "1878294${__Random(1000,9999,num)}";

②定义一个beashell变量:phoneNum

复制代码
phoneNumString optCode = "testfan";

③定义一个beashell变量:timestamp

复制代码
String timestamp = "${__time(,curtime)}";

④定义一个beashell变量:data,用于接收拼接后的数据

复制代码
String data = phoneNum + optCode + timestamp;log.info(data);

⑤引入外部Java源代码存放路径

复制代码
source("F:/md5/Md5Util.java");

⑥通过类名和函数名,直接调用MD5方法,对拼接后的数据进行加密

复制代码
String md5Data = Md5Util.getMd5Hex(data);log.info(md5Data);

⑦将beanshell变量转为成Jmeter变量

复制代码
vars.put("sgin",md5Data)

注意:beanshell变量和Jmeter变量不要混用,脚本后面加。

3、执行脚本

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
GalaxyPokemon40 分钟前
LeetCode - 53. 最大子数组和
算法·leetcode·职场和发展
程序员的世界你不懂3 小时前
Jmeter(四) - 如何在jmeter中创建网络测试计划
jmeter
天真小巫11 小时前
2025.6.8
职场和发展
eachin_z12 小时前
力扣刷题(第四十九天)
算法·leetcode·职场和发展
tuan_zhang1 天前
第七章:未名湖畔的樱花网关
程序人生·云计算
每次的天空1 天前
Android第十三次面试总结基础
android·面试·职场和发展
1.01^10001 天前
[5-02-04].第01节:Jmeter环境搭建:
jmeter
珂朵莉MM1 天前
2021 RoboCom 世界机器人开发者大赛-高职组(初赛)解题报告 | 珂学家
java·开发语言·人工智能·算法·职场和发展·机器人