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,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

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

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

相关推荐
blues_C1 小时前
Pytest-Bdd-Playwright 系列教程(9):datatable 参数的使用
自动化测试·pytest·bdd·playwright
一只往上爬的蜗牛2 小时前
【CICD】CICD 持续集成与持续交付在测试中的应用
自动化测试·webhook·cicd
互联网杂货铺3 小时前
基于Selenium+Python的web自动化测试框架(附框架源码+项目实战)
自动化测试·软件测试·python·selenium·测试工具·单元测试·测试用例
好心的小明5 小时前
【蓝桥杯】CB组国二攻略(省赛地点:广东)
职场和发展·蓝桥杯
惜.己5 小时前
Jmeter中的配置原件(四)
java·前端·功能测试·jmeter·1024程序员节
_OLi_7 小时前
力扣 LeetCode 459. 重复的子字符串(Day4:字符串)
算法·leetcode·职场和发展·kmp
Xiao Fei Xiangζั͡ޓއއ8 小时前
一觉睡醒,全世界计算机水平下降100倍,而我却精通C语言——scanf函数
c语言·开发语言·笔记·程序人生·面试·蓝桥杯·学习方法
_OLi_8 小时前
力扣 LeetCode 150. 逆波兰表达式求值(Day5:栈与队列)
算法·leetcode·职场和发展
糊涂君-Q9 小时前
Python小白学习教程从入门到入坑------第三十一课 迭代器(语法进阶)
python·学习·程序人生·考研·职场和发展·学习方法·改行学it
路遇晚风11 小时前
力扣=Mysql-3322- 英超积分榜排名 III(中等)
mysql·算法·leetcode·职场和发展