使用Jmeter进行性能测试

1.JDK安装并配置环境变量

1.1下载JDK8并进行安装

1.2安装后进行环境变量的配置,在系统环境变量中新建 JAVA_HOME,值为 JDK 安装路径(如 C:\Program Files\Java\jdk-17)。编辑 Path 变量,新增 %JAVA_HOME%\bin

1.3打开命令行输入 java -version,显示版本号即成功。JMeter 5.0 以上需 JDK 8+,若启动报错请检查 JDK 版本是否过低。

2.Jmeter的安装

2.1下载‌ zip 包,解压到英文路径目录。

2.2安装后进行环境变量的配置,在系统环境变量中新建 JMETER_HOME,值为 JMeter 解压根目录。在 Path 中新增 %JMETER_HOME%\bin

2.3验证启动:命令行输入 jmeter -v 查看版本,或进入 bin 目录双击 jmeter.bat 启动界面。‌‌‌

3.性能测试脚本创建

3.1打开jmeter工具,创建一个测试计划,下面设置线程组,线程组用来控制并发,启动时间,已经持续访问时间

线程组下面添加取样器http请求,设置Http请求,包括服务器名称或者ip,duankouhao ,get请求还是post请求,路径,编码

在http请求下面添加配置元件-http信息头管理器

在http请求下面添加监听器---查看结果树、聚合报告(聚合报告页面要添加一个写入报告的jtl文件,eg:C:\Users\smzlj\Desktop\zhh\业务节点列表查询.jtl)这个jtl文件是一个测试日志,后续可以根据这个日志,生成测试报告

脚本运行过一次之后,在下次运行前,要清空一下,一是脚本的执行结果清空,如下图,一个日志文件要清空

结果达标之后,将脚本保存下来放到测试脚本文件夹中,后缀是.jmx,jtl测试日志文件夹放后缀是.jtl的文件,测试结果文件夹放根据jtl生成的测试报告文件

根据测试日志生成测试报告的命令如下:

使用cmd窗口,进入到jmeter安装目录bin目录下

生成测试结果命令: .\jmeter -g d:\jmt-result\test.jtl -o d:\jmt-report\test

执行之后会在d:\jmt-report\目录下会有test文件夹,打开文件里面的.html文件就能查看报告

以上是使用windows机器上面的jmeter工具对服务器接口进行压测的步骤


如果windows机器与服务器之间网络不通,必须要在服务器上对服务器接口进行压测,一般服务器都是linux系统,可以在linux系统上安装jmeter工具,但是linux上的jmeter工具不是可视化的

可以现在windows机器上使用jmeter工具生成测试脚本.jmx,将这个脚本复制到linux服务器上,

再在linux服务器上使用指令,进入到jmeter安装目录bin目录下,执行测试命令: .\jmeter -n -t d:\test.jmx -l d:\jmt-result\test.jtl

拿到.jtl日志文件后,可以传输回windows机器,再使用上面的脚本生成测试报告即可。


下面这些是监控,还没用过,先记录下

nmon

验证nmon文件是否可用

./nmon 如果没有报错,并且执行成功说明可用

nmon监控命令

./nmon -s03 -c100 -f -m /mnt

(-s03 每3秒取一次数据

-c100 取100次

/mnt 文件存放目录)

相关推荐
中国软件测试质量协会11 小时前
国产性能测试工具:kylinPET高仿真与高并发性能测试技术深度解析——与JMeter、LoadRunner全面对比
测试工具·jmeter
拜托多多指教2 天前
【JMeter】外观设置(Mac)
jmeter
川石课堂软件测试9 天前
自动化测试常见的异常处理
python·jmeter·mysql·docker·容器·单元测试·grafana
wuhuhuan9 天前
JMeter 性能测试教程
jmeter
行者-全栈开发10 天前
JMeter + InfluxDB + Grafana:搭建生产级压测实时监控与告警体系
jmeter·grafana·时序数据库·influxdb·实时监控·backendlistener·告警性能测试
wuhuhuan10 天前
【JMeter 学习打卡 Day 7】从会用到会用对,完成一次完整压测
学习·jmeter
行者-全栈开发12 天前
JMeter 自定义 Sampler 开发:从零写 TCP 私有协议压测插件
jmeter·tcp协议·源码解析·插件开发·gradle构建·自定义sampler·abstractsampler
wuhuhuan12 天前
【JMeter 学习打卡 Day 5】控制流程和节奏的利器
学习·jmeter
wuhuhuan13 天前
【JMeter 学习打卡 Day 4】多用户登录 + 动态 token 关联
学习·jmeter