linux上用Jmter进行压测

         在上一篇中安装好了Jmeter环境,在这一篇中将主要分享如何使用jmeter在linux中进行单机压测。

1.项目部署

        在这里我们先简单部署一下测试环境,所用到的项目环境是个jar包,先在linux上home目录下新建app目录,然后通过rz命令将项目jar包上传到该目录下,然后执行命令启动项目:

nohup java -jar pinter.jar &

需要注意的点:

        尽量选linux上不常用的目录来存储项目,减少一些不必要的麻烦。

        因为用的是阿里云的服务器,项目所用到的端口一定要在安全组中开放。

2.Jmeter压测

2.1.编写脚本

        因为linux上不能编写脚本,所以进行压测的脚本需要先在本地开发调试完成,在配置好了之后上传到linux中使用,这里准备了一个小脚本,10个线程,执行3分钟,如下所示。

2.2.上传脚本

        用mkdir命令在home目录下新建scripts目录,进入scripts,使用rz命令将待压测脚本上传到当前目录下。

2.3.修改响应时间间隔

        压测的时间jmeter默认响应(打印结果)输出日志为30秒一次,可以在jmeter的bin目录下修改jmeter.properties文件中下面的值。

        

2.4.进行压测

        执行命令启动脚本:

jmeter -n -t 12_linux测试脚本.jmx -l test-10.jtl

 -n: 命令行模式 no-gui;

-t:jmx脚本路径;

-l:jtl结果文件名称,默认存放在当前路径;

         请求数据总共分2种,一种是带“+”号的为当前新增数据,带“=”号的为截止目前为止的汇总数据,请求执行效果和对应字段解释如下所示。

3.查看报告

3.1.查看聚合报告

        jmeter在linux中生成的压测报告无法在linux上直接查看,可以将生成的jtl文件通过sz命令下载到本地电脑,然后在jmeter图像界面中导入到当前脚本聚合报告中查看,可以看到tps和我们在linux上看到的基本一致,如下图所示。

3.2.生成报告

        在linux中生成的压测数据,不能直接以报表的形式展示,但是可以通过自带的命令生成美观的报告,可以将生成的报告下载到本地电脑上进行查看。

Html的报表生成步骤如下:

1、进入jmeter的bin目录下,修改reportgenerator.properties;

2、修改jmeter.reportgenerator.overall_granularity=1000(报表中数据展示间隔1秒) ;

3、创建一个存放数据报表的文件夹(我这里是在/home/scripts目录下新建了一个result目录);

4,执行命令:jmeter -g test-10.jtl -o ./report/  

        上述命令执行成功后,会将报表数据生成到report目录下,但是无法在linux中打开,将index.html文件拿到本地也无法正常查看,需要整个report目录下数据做支撑,因为不是压缩包无法直接通过sz下载,所以需要先执行压缩命令将文件进行压缩,如下所示。

zip -r report.zip report

        下载压缩文件:

sz report.zip

        在本地电脑上解压,然后打开index.html文件就可以看到很多维度的报表数据,丰富且精美,如下图所示。

4.生成报告失败原因

要想文件生成成功需要注意以下几点:

        生成报告的.jtl文件格式必须是csv,如果发现格式不对,可以在bin目录下的jmeter.properties文件中修改:

jmeter.save.saveservice.output_format=csv

生成报告的report目录必须是空的,否则会报错,如下所示。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-11 12:04:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-11 12:04:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-11 12:04:06       87 阅读
  4. Python语言-面向对象

    2024-05-11 12:04:06       96 阅读

热门阅读

  1. C++ 异常处理

    2024-05-11 12:04:06       36 阅读
  2. linux 设备驱动支持多个设备写法

    2024-05-11 12:04:06       31 阅读
  3. 聊聊Mysql锁问题

    2024-05-11 12:04:06       24 阅读
  4. MySQL中的批量更新实战

    2024-05-11 12:04:06       30 阅读
  5. 低代码技术赋能未来乡村建设:创新与实践

    2024-05-11 12:04:06       34 阅读