博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jmeter用BeanShell调用jar包对HTTP请求中的参数进行MD5加密
阅读量:6808 次
发布时间:2019-06-26

本文共 2719 字,大约阅读时间需要 9 分钟。

前提:

eclipse、JDK、Jmeter

说明:

本文分为两部分进行配置说明

第一部分:编写JavaMD5加密脚本

第二部分:使用Jmeter的BeanShell进行验证

****************************************************************************************

第一部分:编写JavaMD5加密脚本:

第一步:打开eclipse,创建一个MD5Test包,如下图:

输入创建的包的名称,点击Finish

完成后如下图:

第二步:选择该包,邮件创建一个class类

创建class的名称为MD5_Method,点击finish,如下图:

完成后如下图所示:

第三步:编写MD5方法,如下图:

脚本如下:

package MD5Test;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class MD5_Method {        public String MD5(String sourceStr) {        String result = "";        try {            MessageDigest md = MessageDigest.getInstance("MD5");            md.update(sourceStr.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));            }            result = buf.toString();            System.out.println("MD5(" + sourceStr + ",32) = " + result);         //   System.out.println("MD5(" + sourceStr + ",16) = " + buf.toString().substring(8, 24));        } catch (NoSuchAlgorithmException e) {            System.out.println(e);        }        return result;    }}

第四步:编写一个test脚本,测试MD5加密方法的正确性

方法同创建MD5_Method方式一致,如下图:

test中的脚本编写如下:

package MD5Test;import MD5Test.MD5_Method;public class test {    public static void main(String[] args){        String res = new MD5_Method().MD5("wangyuhang@acktest");        System.out.print(res);            }}

验证,点击界面上的Run菜单选项运行test.Java文件,如下图:

第五步:将MD5Test导出为jar包

选择MD5Test右键选择导出,如下图:

选择Java下的Jar File 点击next,如下图:

配置JARfile导出的路径及导出的名称点击finish,在D:\Beanshellstudy\路径下查看是否存在TestMD5.jar文件,如下图:

第六步:将打包出来的TestMD5.jar文件放到Jmeter的\lib\ext目录下,如下图:

第六步:启动Jmeter(注意每次更新ext下的文件时需要重启Jmeter才生效)

**************************************************************************************

第二部分:使用Jmeter的BeanShell进行验证

第一步:启动Jmeter,并创建一个test的线程组,如下图:

(右键测试计划—添加—Thread(Users)—线程组,如下图:)

第二步:选择添加—配置元件—用户定义的变量,如下图:

第三步:选择用户定义的变量添加passwd及相应的值,如下图:

第四步:创建HTTP请求(添加—sampler—HTTP请求),如下图:

服务器名称:www.baidu.com(以百度为例)

路径:/login.php(随意)

点击界面下的添加按钮,填写带的参数

第五步:添加察看结果树(添加—监听器—察看结构树),如下图

这里保持默认就好不需要配置

第六步:在http请求下,添加BeanShell前置处理器,如下图:

添加完成后选择添加的BeanShell Preprocessor,编写脚本,如下图所示:

import MD5Test.MD5_Method;String input = vars.get("passwd");String output = new MD5_Method().MD5(input);vars.put("passwd",output);

第七步:为了察看请求前和请求后passwd的值,在http请求的前后加上debug,如下图:

配置默认就好

第八步:运行Jmeter脚本

请求passwd的值:

请求后passwd的值,已经进行加密处理:

 

HTTP请求中的passwd值,如下图:

至此说明MD5加密成功。。。。OK

参考文档:

 

转载于:https://www.cnblogs.com/beginner-boy/p/7880612.html

你可能感兴趣的文章
nodejs.md
查看>>
opencv(10)图像变换之边缘检测
查看>>
百度地图的简单使用
查看>>
15个简单算法题
查看>>
JSTL 核心标签库 使用(C标签)
查看>>
L2-004. 这是二叉搜索树吗?
查看>>
socket发送http请求
查看>>
Redis主从配置
查看>>
时间格式大全
查看>>
面向对象三大特性
查看>>
Css样式
查看>>
LaTeX使用小结2
查看>>
js的this作用域
查看>>
POJ 2391 Ombrophobic Bovines【二分+最大流】
查看>>
Python与模块--01sys
查看>>
那些令人喷饭的代码注释:仅以此代码献给...it's realy ?
查看>>
华为手机连不上adb解决方法
查看>>
怎样让程序不断执行
查看>>
touch事件的分发和消费机制
查看>>
字节对齐 pragma
查看>>