Jmeter beanshell 生成手机号加密签名

Posted 一切很好 不缺烦恼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter beanshell 生成手机号加密签名相关的知识,希望对你有一定的参考价值。

首先自己写一个根据手机号生成加密字符串的函数,并且导出为Jar包,函数具体内容省略,网上有很多

将Jar包放到Jmeter lib\ext目录下面,然后在user.properties里面把路径加进去

技术分享

创建一个BeanShell PreProcessor,这是一个前置的beanshell,会在我发request前把我需要的mobile还有签名生成好

具体结构如图:

技术分享

 

我的request的body data如下:

{
    "mobile":"${mobile}",
    "signature":"${sin}"
}

beanshell里面:

import Tools.MD5Util;
MD5Util md5=new MD5Util();   
vars.put("str",md5.MD5());
String test = vars.get("str");
vars.put("sin",test.substring(0,32));
vars.put("mobile",test.substring(33));

这里有个坑,需要把Jmeter的变量转换成beanshell认识的变量,String test = vars.get这步比较重要

试了很多次用${str}直接去取值,beanshell不会把它当作变量来处理,只会当作是字符串。

打印结果如下,看结果应该知道,我封装的方法返回了签名+","+手机号,如变量str显示,所以我在beanshell里面做了截取字符串的处理:

技术分享

技术分享

 

 

 

 

 

  

以上是关于Jmeter beanshell 生成手机号加密签名的主要内容,如果未能解决你的问题,请参考以下文章

利用JMeter的beanshell进行接口的加密处理

Jmeter使用beanshell对数据进行加密传输

Jmeter Md5加密操作之-------BeanShell PreProcessor

jmeter接口测试-调用java的jar包-csv参数化请求-BeanShellPreProcessor生成验签作为请求验证参数-中文乱码----实战

JMeter常用脚本开发之BeanShell PreProcessor

Jmeter_beanshell实现字符串加密