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做接口自动化测试中,经常会使用到公共的数据,那么就需要对这些公共的数据分离出来,不管是基于测试框架的思想,还是使用工具来进行做自动化测试,公共数据的分离首先是需要思考的.这里就以获取 ...
随机推荐
- 洛谷 P3088 [USACO13NOV]挤奶牛Crowded Cows 题解
P3088 [USACO13NOV]挤奶牛Crowded Cows 题目描述 Farmer John's N cows (1 <= N <= 50,000) are grazing alo ...
- 洛谷 P1432 倒水问题
目录 题目 思路 \(Code\) 题目 戳 思路 \(bfs\) 第一遍提交\(50\),第二遍就\(100\)了,qwq \(Code\) #include<iostream> #in ...
- 【洛谷P3391】文艺平衡树——Splay学习笔记(二)
题目链接 Splay基础操作 \(Splay\)上的区间翻转 首先,这里的\(Splay\)维护的是一个序列的顺序,每个结点即为序列中的一个数,序列的顺序即为\(Splay\)的中序遍历 那么如何实现 ...
- nacos启动与sql8.0的问题解决方法
hi all! 半年多没更新,是不是以为我消失了……直接正题~ 在搭建nacos环境的时候,有这样的一项:数据库持久化配置.(官方文档),这个配置可以灵活的帮我们进行配置而不用总是重启服务. 那么问题 ...
- Alpha2
队名:福大帮 组长博客链接:https://www.cnblogs.com/mhq-mhq/p/11885037.html 作业博客 :https://edu.cnblogs.com/campus/f ...
- 从宿主机直接进入docker容器的网络空间
Docker dns nameserver 也是进入容器网络空间,监听53端口,但它通过iptable把端口映射到宿主机上,处理DNS请求的进程就在宿主机上. how does Docker Embe ...
- hangfire控制台应用程序中添加控制面板
1.使用nuget 管理包安装 Microsoft.AspNet.WebApi.OwinSelfHost 2.根目录添加新建类 名为:Startup.cs public class Startup { ...
- Spring Boot-intellij idea导入方式搭建SpringBoot
Spring Boot概念 从最根本上来讲,Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用.简便起见,该框架也提供了命令行界面,它可以用来运行和测试Boot应用.框架的发布版 ...
- Win 10 MSYS2 VS Code 配置 c++ 的编译环境
博客参考 https://www.cnblogs.com/esllovesn/p/10012653.html 和 https://blog.csdn.net/bat67/article/details ...
- (obj) error: LNK2019: 无法解析的外部符号解决方法
利用VS2010 C++ 调用 labview生成的动态库编程时无法生成exe 报错信息: Cjj_32.obj : error LNK2019: 无法解析的外部符号 _GetPXIResource@ ...