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做接口自动化测试中,经常会使用到公共的数据,那么就需要对这些公共的数据分离出来,不管是基于测试框架的思想,还是使用工具来进行做自动化测试,公共数据的分离首先是需要思考的.这里就以获取 ...
随机推荐
- 2019qbxt游记
Day 1 2019.8.6 来到qbxt的第一天,虽然早就对宾馆的等级做好了准备,但是还是十分的失望,外观是真的很简陋,不过里面还好的,,可以凑合. 我竟然和lbh一个宿舍!!!这次外出学习必将不安 ...
- linux命令之------Chown命令
Chown命令 1) 作用:将指定文件的拥有者改为指定的用户或组. 2) -c:显示更改的部分的信息. 3)-f:忽略错误信息. 4)-h:修复符号链接. 5)-v:显示详细的处理信息. 6)-R:处 ...
- C Primer Plus--结构和其他数据类型(2)
目录 枚举类型 enumerated type 枚举默认值 为枚举指定值 命名空间 namespace typedef关键字 * () []修饰符 typedef与这三个运算符结合 函数与指针 函数指 ...
- 计算电脑所能表示的最大最小值(c++)
C++当中获得现在计算机上所能表示的各种类型(比如int,long int,short int,double,float等)最大最小有两种方法,一种是使用c++预先定义的宏,对于有些编译器可能需要包含 ...
- 如何在 Debian 9 上安装和使用 Docker
Docker 是一个容器化平台,允许您快速构建,测试和部署应用程序,作为便携式,自给自足的容器,几乎可以在任何地方运行. Docker 是容器技术的事实上的标准,它是 DevOps 工程师及其持续集成 ...
- python 运行当前目录下的所有文件
查看当前目录下所有py文件(本身除外run) import os file_list = os.listdir(os.getcwd()) # 获取当前目录下所有的文件名print(file_list ...
- Spring重定向
1.使用HttpServletResponse的sendRedirect()方法. 示例: @PostMapping("/user/product/id") public void ...
- mac上使用sips命令快速裁剪、旋转、翻转图片
mac上使用sips命令快速裁剪.旋转.翻转图片 日常开发工作中,经常碰到要对图片进行一些简单的处理,不需要动用PS,在mac上就有一个很好的命令行工具:sips 这里我们不具体展开讲,仅贴出几个常用 ...
- springcloud添加自定义的endpoint来实现平滑发布
在我之前的文章 springcloud如何实现服务的平滑发布 里介绍了基于pause的发布方案. 平滑发布的核心思想就是:所有服务的调用者不再调用该服务了就表示安全的将服务kill掉. 另外actu ...
- vue-vuex的使用
做后台项目的时候,有时候会需要用到状态管理,VUEX就能够很好的为我们解决好这个问题. 安装 VUEX npm install vuex --save 具体使用: 建立 src/store/index ...