微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

实战干活:JMeter做压力测试教程及结果分析【建议收藏】

一、测试工具:

   JMeter

二、JMeter介绍:

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。

三、Java环境的安装与配置:

(1)因为JMeter是使用JAVA写的,所以使用JMeter之前,先安装JAVA环境,

在这里插入图片描述

配置变量

系统变量→新建 JAVA_HOME 变量 。 变量值填写jdk的安装目录(本人是 E:\Java\jdk1.7.0)

系统变量→寻找 Path 变量→编辑

在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

(注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码

系统变量→新建 CLAsspATH 变量

变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)

系统变量配置完毕

测试jdk是否安装成功,可在【开始】中搜索cmd,输入【java -version】

在这里插入图片描述

四、JMeter下载与使用:

1.JMeter下载地址:在官网 http://jmeter.apache.org/

在这里插入图片描述

2.解压下载的二进制包,使用cmd命令进入bin目录,使用jmeter.bat启动程序。(注意直接双击jmeter.bat无法启动时需要使用Window+R,输入cmd,然后进入bin目录如下)

在这里插入图片描述

3.启动之后会有两个窗口,一个cmd窗口,一个JMeter的 GUI

在这里插入图片描述

上面的意思就是:不要使用GUI运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请不要使用GUI。使用下面的命令来执行测试:

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

在这里插入图片描述

五、创建测试

1.创建线程组

在“测试计划”上右键 【添加】–>【Threads(Users)】–>【线程组

在这里插入图片描述

2.设置线程数和循环次数。我这里设置线程数为500,循环一次。

在这里插入图片描述

3…创建Http请求

在“线程组”右键 【添加-】->【samlper】–>【HTTP 请求】

在这里插入图片描述


4.添加察看结果树和聚合报告

在我们刚刚创建的线程组上右键 【添加】–>【监听器】–>【察看结果树】。添加聚合报告,右键 【添加】–>【监听器】–>【聚合报告】。

直接添加,然后点击运行按钮就可以看到结果了。

结果树分析:

在这里插入图片描述


通过察看结果树,我们可以看到每个请求的结果,其中红色的是出错的请求,绿色的为通过。

Thread Name(线程组名称): 线程组 1-24

Sample Start( 启动开始时间): 2019-02-15 15:00:14 CST

Load time(加载时长): 290

Connect Time:(连接时长) 86

Latency(等待时长): 174

Size in bytes(发送的数据总大小): 2212

Sent bytes:821

Headers size in bytes(发送数据的其余部分大小): 1162

Body size in bytes: 1050

Sample Count(发送统计): 1

Error Count(错误统计): 0

Data type (“text”|“bin”|""): text

Response code(返回状态码): 200

Response message(返回信息): OK

这里绿色的就说明请求是通过的,返回值是200,如果出现红色的×就说明请求失败,这时候可以通过右边的取样器结果和响应数据来查看结果。

聚合报告分析:

在这里插入图片描述


ample:本次测试场景共运行多少线程;

Average:平均响应时间;

Median:统计意义上的响应时间中值;

90% line:所有线程中90%的线程响应时间都小于xx的值;

Min:响应最小时间;

Max:响应最大时间;

Error:出错率;

Throughput - 吞吐量以“requests/second、requests /minute、 requests /hour”来衡量。 时间单位已经被选取为second,所以,显示速率至少是1.0,即每秒1个请求。 当吞吐量被保存到CVS文件时,采用的是requests/second,所以30.0 requests/second 在CVS中被保存为0.5

Kb/sec - 以Kilobytes/SEOnd来衡量的吞吐量

六、测试结果:

(1)50个用户同时访问企业用户会议室预定页面,平均响应时间是0.146秒,最大的响应时间0.387秒,最小的响应时间是0.096秒,错误率为0。

在这里插入图片描述


(2)100个用户同时访问企业用户会议室预定页面,平均响应时间是2.295秒,最大的响应时间8.132秒,最小的响应时间是0.425秒,错误率为0。

在这里插入图片描述


我的学习交流群:1125939340

进群需要有实践经验,能够互相交流共同进步的加,内有许多,多年工作经验的大佬有问题可以提出。

原文地址:https://blog.csdn.net/m0_60454152/article/details/119180961

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐