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

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

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

相关推荐
Soari7 分钟前
终结 Vibe Coding(Harness Engineering)!深度拆解 ralph:以交付所有 PRD 为生命周期的自主 AI Agent 闭环
自动化测试·人工智能·软件工程·aiagent·ralph·harnesseng·prd驱动
小李云雾37 分钟前
慧校坊-二手校园交易平台-------项目总结
数据库·后端·程序人生·fastapi·项目
郝学胜-神的一滴1 小时前
Qt 高级开发 004: 三大窗口类深度解析
开发语言·c++·qt·程序人生·系统架构
_日拱一卒1 小时前
LeetCode:199二叉树的右视图
算法·leetcode·职场和发展
测试员周周1 小时前
【Appium 系列】第08节-pytest 集成 — conftest.py 中的 fixture 与 hook
开发语言·人工智能·python·功能测试·appium·测试用例·pytest
鱼子星_1 小时前
【数据结构与算法】OJ题目详解(一)-单链表:从易到难的面试OJ题目
c语言·数据结构·算法·链表·面试·职场和发展
凌波粒2 小时前
LeetCode--二叉树层序遍历实战指南
算法·leetcode·职场和发展
洛水水2 小时前
【力扣100题】48.乘积最大子数组
算法·leetcode·职场和发展
洛水水2 小时前
【力扣100题】49.分割等和子集
算法·leetcode·职场和发展
洛水水2 小时前
【力扣100题】50.最长有效括号
算法·leetcode·职场和发展