网站首页 > java教程 正文
在使用jmeter做性能测试时 ,基本都是针对以下的两种类型的性能测试:
- 对web系统页面的性能测试
- 对系统的接口进行性能测试
有页面的可以优先测试页面 ,但是如果是APP或小程序的性能测试 ,更多的是对接口进行性能测试 。那么接下来我们分别对这两种情况进行一一介绍。
1.对web系统进行性能测试
在对web系统进行性能测试时,一般都是通过录制的方式,通过工具将要测试的页面录制成脚本,然后再进行性能回放 。目前多数也是支持这种工具 ,虽然jmeter也自带录制功能,但是总觉得jmeter的录制不太耗时,所以这里更推荐大家使用badboy进行录制 。下面就来介绍如何使用Badboy进行录制性能测试脚本。
操作步骤:
- 进入badboy官网地址,下载地址:https://badboy.en.softonic.com/ ,在本地进行安装。若已安装则忽略此步骤。
- 打开badboy界面,进入后直接就是录制界面,具体如下 。
- 在地址栏中输入系统地址 ,点击‘前进’按钮 。
- 然后就会在右侧的区域内出现系统页面 ,点击页面进行业务操作(注意:这里就是要进行性能测试的场景,不是随意点击),操作完毕后点击停止按钮
- 点击文件-Export to Jmeter后,就会在导出jmeter脚本 。
6.打开jmeter,先新建个线程组,然后将上面导出的脚本导入到jmeter线程组中 。
- 在生成的脚本中再根据要求做一些简单的修改,比如配置线程组数,运行时间,登录设置等后,就此一个性能脚本搞定 。
最后,我们就可以进行性能压测了 。
2.批量采集接口进行性能测试
正常情况下,在开发性能脚本基本都是需要一个个添加 和调试。比如一个性能场景中包含了10个接口,那么就需要在jmeter中添加10个这样的接口,然后一个一个调试 ,在这个过程有时候会很耗时 。那么能否也像上面一样,可以直接操作APP应用就能生成对应的接口呢 ?经过构思并一顿网上查找后 ,最终确定也是可以实现的。具体实现思路就是:
- 操作被测系统,然后通过fiddler进行抓包 。
- 在fiddler抓包时设置过滤条件,只保留被测系统的数据包
- 然后将数据包导出jmeter格式的数据包 ,这里就需要这么一个插件,能支持导出jmeter格式的数据包 。
- 导入到jmeter中 ,进行简单调整与修改 。
好了,知道了实现思路后,在网上终于找到了这样的一个插件 ,可以支持导出jmeter格式的数据包。接下来就介绍如何批量采集数据包导入jmeter中的步骤。
(1)将插件放在fiddler目录下
插件下载链接:链接:https://pan.baidu.com/s/1TDzL-2ZxnM2ZORaZ7GgX6w ,提取码:mf7j
将下载的ImportExport解压后,里面有两个文件:FiddlerExtensions.dll、FiddlerExtensions.pdb ,把这两个文件放在Fiddler安装路径下的ImportExport目录下 。具体如下 :
(2)重新打开fiddler,进行抓包
- 配置好插件后,重新打开fiddler 。
- 提前在fiddler中设置好过滤条件 ,只允许被测系统的数据包通过(这里就以禅道为例,实际情况下应该是通过操作APP采集接口)。
- 在被测系统上进行业务操作,注意这里的操作一定是按照性能的业务需求来进行操作 。
- 导出抓取到的数据包,数据格式选择jmeter .
(3)将数据包导入jmeter中,进行相应调整 。
把导出的包导入到jmeter中,然后再进行一些调整,最终成为我们所要的脚本。
3.总结
通过以上的两种方式 ,我们既可以快速的生成相应的web页面脚本,也可以快速生成app所对应的接口数据 ,从而降低脚本开发时间 。
猜你喜欢
- 2024-11-13 Java+Redis 通过Lua 完成库存扣减,创建消息队列,异步处理消息
- 2024-11-13 [每日一题][Redis]为什么Lua脚本可以保证原子性?
- 2024-11-13 python脚本查找java类所属jar包(python 调用jar)
- 2024-11-13 Gradle 6.4 RC4 发布,带来 Java 模块、Groovy DSL 脚本插件
- 2024-11-13 Scala声明变量 定义函数 编写脚本
- 2024-11-13 Javacom英文脚本手写字体(java脚本怎么写)
- 2024-11-13 宝藏脚本!Linux系统快速启动Java应用服务,提升开发效率!
- 2024-11-13 分享一个实用脚本——服务器日志清理脚本
- 2024-11-13 只因知晓Java平台的脚本引擎,面试官当场录用:这小子还不错
- 2024-11-13 Shell编程:命令列表 && 和 ||
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)