使用Jmeter测试MD5加密接口性能测试实战

性能测试过程中,有时候会遇到需要进行加解密的接口,下面我就来介绍如何针对MD5加密接口进行性能测试 1、首先找开发了解需求,知道是一个http类型的post请求,需要对请求的applianceId参数进行MD5加密处理,然后把该参数输入到sign,最后发起请求给服务器 2、我们需要做的就是问开发拿到MD5加密函数(java),然后通过jmeter的前置处理器BeanShell PreProcessor,就可以实现该效果 3、由于applianceId也需要参数化,所以需要使用CSV数据文件处理进行参数化

一、添加线程组

1. 添加线程组,Jmeter执行是通过线程组进行驱动的,测试计划必须最少有一个线程组,选中Test Plan,点击右键,添加》Threads》线程组

二、添加HTTP请求

1.  添加创建连接请求-选中线程组,点击右键,添加》Sampler》HTTP请求
2. 在HTTP请求中输入服务器ip、端口、路径、参数
3. 由于sign参数需要进行MD5加密处理,所以需要在该HTTP请求添加前置处理器BeanShell PreProcessor
4. 添加CSV数据文件进行参数化,如下:
5. 前置处理器BeanShell PreProcessor中的java语句如下:
6. BeanShell断言,当有失败请求,打印失败响应结果到日志
7. 添加查看结果树和Debug Sampler用来调试和查看结果

三、执行性能测试(Linux环境)

1. 使用命令cd /home/jmeter/project/devops系统/20180703/script , 进入到脚本路径,一定要进入script目录下,这样才能使用相对路径,不用输入很长的绝对路径
2. 命令如下:jmeter -n -t 新增检查.jmx -l ../result/summary_report/新增检查_10_10min.jtl -j ../result/log/新增检查_10_10min.log
3. 使用该命令调用jmeter进行性能测试,-t后面跟的是需要执行的脚本名称,-l后跟的是聚合报告保存路径,-j跟的是日志保存路径,10是并发用户数,10min是场景时长
4. 执行完毕,会在两个路径下生成文件
5. 性能测试过程中报内存溢出,如下
6. 需要进入到apache-jmeter-4.0-performance/bin目录下,使用vi jmeter命令修改jmeter文件中的: "${HEAP:="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"}" 把最大内存Xmx1g改成Xmx3g,可根据需要调大,然后重新启动jmeter

本文分享自微信公众号 - jmeter相关技术交流(jmeter_auto)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏实战docker

CentOS部署Harbor镜像仓库

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

20220
来自专栏微信公众号:Java团长

Java实现QQ登录和微博登录

个人网站最近增加了评论功能,为了方便用户不用注册就可以评论,对接了 QQ 和微博这 2 大常用软件的一键登录,总的来说其实都挺简单的,可能会有一点小坑,但不算多...

25420
来自专栏Nicky's blog

tomcat项目下载中文文件乱码问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

9020
来自专栏Devops专栏

python3 paramiko 基于RSA私钥远程执行ssh、上传、下载文件

paramiko 遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接,可以实现远程文件的上传,下载或通过ssh远程执行命令。

14420
来自专栏java 微风

Springboot:监控与管理 Actuator

原文链接:https://blog.csdn.net/u012326462/article/details/80596...

6510
来自专栏Coding Diary

自定义FutureTask实现

FutureTask是Future的实现类,用来异步任务的获取结果,可以启动和取消异步任务,查询异步任务是否计算结束以及获取最终的异步任务的结果。通过get()...

7220
来自专栏前端菜鸟变老鸟

WEB性能--HTTP 2.0介绍

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

9430
来自专栏Coding Diary

Java网络编程--BIO阻塞式网络编程

阻塞(blocking)IO :阻塞是指结果返回之前,线程会被挂起,函数只有在得到结果之后(或超时)才会返回

12230
来自专栏kubernetes中文社区

还不会用 Kubernetes集群控制器?

导读:当我们尝试去理解 K8s 集群工作原理的时候,控制器(Controller)肯定是一个难点。这是因为控制器有很多,具体实现大相径庭;且控制器的实现用到了一...

10030
来自专栏中科院渣渣博肆僧一枚

Python的urllib库

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

11730

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励