本文主要记录在使用jmeter时,容易遇到的各小场景
如何切换中文显示
修改访问路径:Options-Choose Language-Chinese (Simplified)
如何实现第一个列子
步骤1.新建线程组
说明:基础需要,线程组可以设置相关运行参数,如你想模拟的用户数、执行次数等待
访问路径:右键点击测试计划(默认创建)-添加-线程-线程组
步骤2.新建http请求
说明:可以模拟一个http类型的请求,类似一般的接口测试
访问路径:右键点击线程组-添加-取样器-HTTP请求
参数说明
协议:http或https,根据实际情况填写
服务器名称或IP:服务器地址域名或IP
端口号:根据访问情况填写,有些请求需要带端口
方法:POST或GET,数据提交方式
路径:接口路径
请求参数:分为键值对形式的输入和json形式的输入,还有文件的输入
步骤3.新建察看结果树
说明:在调试脚本的时候,可以通过该模块查看执行结果,如看请求、响应相关情况
访问路径:右键点击线程组-添加-监听器-察看结果树
步骤4.添加聚合报告
说明:用于查看接口的调用次数、耗时、tps等信息
访问路径:右键点击线程组-添加-监听器-聚合报告
如何设置请求头信息
场景:有些请求,需要设置请求头信息,如:Content-Type、Referer、token等
说明:在http请求前加上HTTP信息头管理器,以键值对的形式添加请求头参数即可
访问路径:右键点击线程组-添加-配置元件-HTTP信息头管理器
两个接口如何关联参数
场景:实际应用中,经常会有接口A响应的参数,提供给接口B当请求参数使用,此时就需要关联使用
说明:接口A后面添加JSON提取器,通过指定格式获取响应数据中的指定参数,再在后续请求或有填参数值的地方使用指定格式使用该参数即可
访问路径:右键点击线程组-添加-后置处理器-JSON提取器
提取参数格式:$.参数名.参数名
使用参数格式:${别名}
例子说明
响应参数:{"code":200,"message":"sucess","data":{"merchantCode":"SH000026","bizCode":"a10164","businessName":"lh测试001","merchantBid":10164,"userId":148,"saasToken":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2ODQxMTk5NzEsInVzZXJuYW1lIjoiU0gwMDAwMjYxNzMxMjIzMzMyMiJ9.ohxRlzFBlY9wbHkDddi6X7bpLAYGPIivHQ4jIp9n2MQ"}}
取参别名:token
提取参数格式:$.data.saasToken
使用参数格式:${token}
响应时间和tps监听器
场景:测试中,我们需要观测接口tps和响应时间的曲线图,从而明确整个压测过程中,接口性能是否表现稳定,对应Jmeter中的监听器为:Reponse Times Over Time、Transactions per Second,Jmeter没有自带对应的监听器,需要可以通过插件支持
第一步、插件下载安装
1.下载地址:https://jmeter-plugins.org/install/Install/
2.把插件的jar包放到 lib/ext 目录,然后重启Jmeter,Jmeter-选项下会多一个Plugins Manager
3.展开Plugins Manager,出现插件页面
Installed Plugins(已安装的插件):即插件jar包中已经包含的插件,可以通过选中勾选框,来使用这些插件;
Available Plugins(可下载的插件):即该插件扩展的一些插件,可以通过选中勾选框,来下载你所需要的插件;
Upgrades(可更新的插件):即可以更新到最新版本的一些插件,可以通过点击截图右下角的Apply Changes and Restart Jmeter按钮来下载更新;
4.安装jpgc-Standard Set插件,重启Jmeter
第二步、tps和响应时间监听器使用
添加监听器这里可以看到多了很多jp@gc选项,其中Reponse Times Over Time为响应时间监听器,Transactions per Second为tps监听器
添加Reponse Times Over Time监听器,即TRT:事务响应时间,性能测试中,最重要的两个指标的另外一个。
该插件的主要作用是在测试脚本执行过程中,监控查看响应时间的实时平均值、整体响应时间走向等。
添加Transactions per Second监听器
即TPS:每秒事务数,性能测试中,最重要的2个指标之一。该插件的作用是在测试脚本执行过程中,监控查看服务器的TPS表现
————比如整体趋势、实时平均值走向、稳定性等。
参数值从文件中读取,该如何处理
场景:实际应用中,经常会有从文件中读取数据使用的时候,此时就可以把多个字段的多行数据存放到文件中,方便引用
说明:读取文件用到的是CSV 数据文件设置,在请求前添加该模块,一次获取文件中一行数据,引用时用${变量名}标识即可
访问路径:右键点击线程组-添加-配置元件-CSV 数据文件设置