前言
之前不是很关注测试,恰逢最近团队新入测试一名,同事存在一个系统需要做压力测试,所以就学习一下JMeter,了解一下常用的一些功能和结果表格的分析。
一、JMeter是什么?
Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。
二、使用步骤
1.安装
安装不再赘述,看一下相关文章就行 安装
2.使用
修改语言
直接上来都是英文可能会比较懵,所以我们调整一下语言
options -> Choose Language -> Chinese(Simplidied)
创建线程组
在 Test Plan 上右键添加线程组
建立完成后可以看到如下页面,其中线程数可以理解为用户并发数,设置1就是并发1,设置100 就是并发100,其他配置可按实际情况调整。
创建取样器
通过上一步配置好线程组后,需要在线程组上添加取样器,我们以测试https://www.csdn.net/为例
配置如下
如果需要测别的路径,在下面的路径填入即可,默认为 /
另外此处在实际测试的时候,并发量超过600左右时,Jmeter开始频繁报错,查看错误包并不是目标站的返回,此处需要配置 高级 中的客户端实现 为 JAVA ,如下
创建监听器
目前为止我们的测试任务基本建立完成,可以直接点开测试,不过当前看不到相关的结果数据,下面我们开始配置监听器。我一般使用如下监听器
附链接介绍其余的常见监听器,按需使用
开始测试
我们把前面的线程组中的数量改为100,点击上方的绿箭头开始测试。
结果分析
这个是我用别的项目测试的一个结果,并发2000.
样本数目表示发出了多少请求;最新样本表示最近一个请求响应的时间;平均为所有请求的平均响应时间;偏离为分布值,越小越好;吞吐量描述服务器的响应速度,单位为分钟;中值为请求时间的中间数。
直至请求大面积返回错误可视为服务器性能最大点,进行后续优化。
3.插件
JMeter自带的线程组可以理解为自测试活动起,并发直接上到预定值,无法设置更具实际意义的梯度。可以安装配置相关的插件来实现功能。
Stepping Thread Group
Stepping Thread Group是jmeter插件的一种,其作用就是模拟实际的生产情况,不断对服务器施加压力,直至到某个值,然后持续运行一段时间。
安装配置方法如下
Stepping Thread Group配置使用
总结
因为并不是专业的测试,且这些东西足以应对目前对于性能测试的要求,其余的功能可以在工作中慢看熟悉和了解。