Jmeter 接口测试之MD5加密函数(函数助手篇)
转自:https://blog.csdn.net/hhyangel372/article/details/81571058
本文给大家介绍一下如何使用Jmeter自带的函数对常量和变量进行简单的加密处理,废话少说,里面开讲。
使用Jmeter的前提条件:
1.对应Jmeter版本的最新JDK下载,地址http://www.oracle.com/technetwork/java/javase/downloads/index.html
2.下载jdk后,解压安装。(注意记住安装路径)
3.配置环境变量,这里就不多说了,请速看百度教程 https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html
nice~你可以开始虐待Jmeter了
下载Jmeter 4.0版本
下载地址:http://jmeter.apache.org/download_jmeter.cgi
解压下载的jmeter压缩文件,打开文件夹,进入bin目录,找到jmeter.bat文件,双击打开(有时候需要右键以管理员身份运行)
刚刚安装完,你是不是奇怪怎么是英文版的?没关系,下面教你永久汉化。
首先,在Jmeter的安装目录下的bin目录中找到 jmeter.properties这个文件,用文本编辑器打开。
然后在#language=en的下一行增加一段:
language=zh_CN
另外,新版本默认是黑色界面,需要改外观颜色的可以在选项中任意切换
函数助手(函数生成器)
在jmeter界面点击 选项-》函数助手对话框,在弹框上选择MD5 ,可以生成一个函数模板。(常量加密)如图:
开始脚本编写
1.新建一个线程组,然后在线程组添加一个前置处理器BeanShell PreProcessor
输入如下代码,例如:
String sendTime = "${__time(yyyyMMddHHmmssSSS,)}"; //生成时间戳
String random = "${__Random(1,1000,Snum)}"; //生成一个随机数
String str = sendTime+";" + random + ";" + "key=123abc"; //拼接需要加密的字符串
vars.put("sendTime",sendTime.toString()); //把生成的时间戳提供给beanshell外部组件引用
vars.put("random",random); //把生成的随机数提供给beanshell外部组件引用
vars.put("test",str); //把拼接的需要加密的字符串提供给beanshell外部组件引用
1
2
3
4
5
6
7
8
9
10
11
2.添加一个Debug Sampler,目的为了在beanshell外部完成MD5加密,目前暂没办法在beanshell里面使用MD5函数完成对变量的加密。(其中code为加密后提供引用的变量名)
3.再次添加一个前置处理器BeanShell PreProcessor ,并在里面输入代码:
String getCode = vars.get("code"); //从beanshell外部的Debug Sampler控件获取变量
vars.put("mycode",getCode.toUpperCase()); //把加密后的MD5值转换成32位大写
1
2
3
4
如图:
3.在线程组添加一个HTTP请求,增加beanshell所有处理的变量作为请求参数。(以百度get请求为例)
4.添加一个监听器,运行脚本,然后查看请求的传参。
好了,介绍完了。这是一种最笨的办法,大神请笑着飘过。除了这种方法之外,另外还可以使用引用外部加密方法或者运用Jmeter自带的DigestUtils等更快捷的方法来实现MD5加密。
---------------------
作者:hhyangel372
来源:CSDN
原文:https://blog.csdn.net/hhyangel372/article/details/81571058
版权声明:本文为博主原创文章,转载请附上博文链接!
Jmeter 接口测试之MD5加密函数(函数助手篇)的更多相关文章
- Flutter 接口签名MD5加密
第一步 更新pubspec.yaml crypto: ^+ 第二步 先引入头文件: import 'dart:convert'; import 'package:convert/convert.dar ...
- Jmeter接口测试之案例实战
Jmeter是apacheg公司基于Java开发的一款开源的压力测试工具,安装Jmeter之前先安装Jdk,具体JDK安装和环境变量配置自行百度.这里不概述. 1.添加线程组 测试计划->添加- ...
- jmeter接口测试之登录测试
注册登录_登陆接口文档 1.登录 请求地址: POST xxxxxx/Home/Login 请求参数: args={ LoginName:"mtest", // 登录名,可以为 ...
- Jmeter接口测试之Get请求
[一] 在测试计划下面添加一个线程组---------->在线程组下面分别添加HTTP请求.响应断言.BeanShellPreProcessor.察看结果树.聚合报告等内容. [二] 将使用的协 ...
- Jmeter接口测试之用例数据分离
之前我们的用例数据都是配置在 Jmeter Http 请求中,每次需要增加,修改用例都需要打开 jmeter 重新编辑,当用例越来越多的时候,用例维护起来就越来越麻烦,有没有好的方法来解决这种情况呢? ...
- Jmeter接口测试之参数传递(十三)
在接口自动化测试中,经常会遇到的一种场景就是参数的场景,比如在用户列表中获取所有的用户列表,然后获取到某一个用户的ID,查看该用户的详细信息.首先在这里理清思路,它的流程是,首先获取到数据,然后在Jm ...
- Jmeter接口测试之案例实战(十一)
在前面的知识体系中详细的介绍了Jmeter测试工具在接口自动化测试中的基础知识,那么今天更新的文章主要是对昨晚的上课内容做个总结. 首先来看Jmeter测试工具在图片上传中的案例应用.首先结合互联网产 ...
- Jmeter接口测试之参数化(十)
在接口测试中,某些时候一些场景会使用到参数化的场景,参数化简单的说就是同一个请求需要不同的数据,比如在性能测试中需要并发多个用户的场景,这样的目的是为了模拟真实的用户场景,需要模拟不同的账号,这里就需 ...
- Jmeter接口测试之用户自定义变量(九)
在使用Jmeter做接口自动化测试中,经常会使用到公共的数据,那么就需要对这些公共的数据分离出来,不管是基于测试框架的思想,还是使用工具来进行做自动化测试,公共数据的分离首先是需要思考的.这里就以获取 ...
随机推荐
- [CSP-S 2019]括号树
[CSP-S 2019]括号树 源代码: #include<cstdio> #include<cctype> #include<vector> inline int ...
- C Primer Plus--结构和其他数据类型(2)
目录 枚举类型 enumerated type 枚举默认值 为枚举指定值 命名空间 namespace typedef关键字 * () []修饰符 typedef与这三个运算符结合 函数与指针 函数指 ...
- 【转】Android ROM分析(1):刷机原理及方法
一.刷机原理 android系统启动的时候,首先会进行一些诸如硬件自检之类的操作,这些操作完成以后(至少它应该知道当前的机器有没有电),会检查一下当前手机按键的状态(接下来就是所谓刷机模式切换了,不同 ...
- RSA前台加密后台解密
RSA解密时BadPaddingException java rsa 解密报:javax.crypto.BadPaddingException: Decryption error Java安全架构__ ...
- Ubuntu18.04启动memtest86
对于Ubuntu18.04, 网上搜的结果都是错的, 根本不是启动时按shift, 而是按F8. 反复重启十几次后终于误触调出了启动菜单. 使用的是USB安装盘, 并且使用的是非UFEI模式.
- android -------- SHA 加密算法
安全散列算法(英语:Secure Hash Algorithm,缩写为SHA)是一个密码散列函数家族,是FIPS所认证的安全散列算法.能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的 ...
- elasticsearch jestclient api
1.es search sroll 可以遍历索引下所有数据 public class TestDemo { @Test public void searchSroll() { JestClientFa ...
- 013-在 Shell 脚本中调用另一个 Shell 脚本的三种方式
如下: fork: 如果脚本有执行权限的话,path/to/foo.sh.如果没有,sh path/to/foo.sh. exec: exec path/to/foo.sh source: sourc ...
- 几个支持 FreeSWITCH 的网络电话的安装与使用(linphone、MicroSIP、Sipdroid)
Ubuntu 安装 Linphone 安装命令 apt-get install linphone 安装完成后,在应用程序 --> 互联网 下就能看到 linphone,打开后注册 注意:linp ...
- mysql全文索引:fulltext
fulltext全文索引 要使用全文索引,不仅需要把某个字段的索引类型设置为fulltext,还需要修改mysql配置文件: [mysqld] ft_wordlist_charset #表示词典的字符 ...