前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jmeter快速入门

jmeter快速入门

作者头像
吾非同
发布2020-10-14 10:00:28
6390
发布2020-10-14 10:00:28
举报
文章被收录于专栏:吾非同

阅读文本大概需要 8 分钟。

么是jmeter?

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

JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证业务接口功能。

jmeter比LoadRunner有什么优点?

JMeter 是一款开源(有着典型开源工具特点:界面不美观)测试工具,并且安装包较小,相比LR的庞大(安装包3、4g),它非常小巧,只需要JDK环境,就可以使用。

而且jmeter功能强大,jmeter设计之初只是一个简单的web性能测试工具,但经过不段的更新扩展,现在可以完成数据库、FTP、LDAP、WebService等方面的测试。因为它的开源性,也可以根据自己的需求开发插件来完善它的功能。

下载安装(已安装配置jdk)

安装:在官网http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录。

配置环境变量:将bin目录添加到环境变量中。

jmeter的构成

一个简单的http请求测试

首先添加线程组:

线程组用来模拟用户,所以也叫Users。一个线程组模块可以包含多个线程,每个线程代表一个用户,这样可以模拟高并发下的请求,并根据网站的响应信息来判断网站的相关性能。

线程数:虚拟用户数,即并发数,一个线程表示一个虚拟用户;

Ramp-Up Period:所有线程启动的时间,单位s。通过这个参数可以设置每个线程间的启动间隔;

循环次数:测试循环的次数,如果勾选了“永远”,那么所有线程会一直发送请求,直到手动停止运行脚本;

添加http请求

一般填写如下要素:

添加监听器

监听器(Listener):是用来监听系统资源的元件。它是用来对测试结果数据进行处理和可视化展示的一系列元件。

图形结果、查看结果树、聚合报告、用表格察看结果都是我们经常用到的元件。

点击启动按钮,在监听器中查看请求结果。

添加聚合报告

聚合报告(aggregate report)

对于每个请求,它统计响应信息并提供请求数,平均值,最大,最小值,错误率,大约吞吐量(以请求数/秒为单位)和以kb/秒为单位的吞吐量.

我们修改线程数为10,点击运行,查看你聚合报告统计结果。

每个接口请求会显示独立的一行数据,每行有13个字段,含义分别如下:

  • Label:请求名或者请求标签,每个JMeter 的组件(例如 HTTP Request)都有一个 “名称” 属性,这里显示的就是“名称”属性的值。
  • #Samples:表示你这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示就是100了。
  • Average:平均响应时间,默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间。
  • Median:中位数,也就是所有请求响应时间中排在中间的那个响应时间点,也就是50% Line,请参考90% Line解释。
  • 90% Line:90%用户请求响应时间,如果把某次任务的所有请求的响应时间按从小到大排序,它是指排在90%处那个点的请求的响应时间,也就是说有90%的请求的响应时间小于等于这个响应时间。后面的50/60/70/80/90/95/99 % Line 也是类似的含义。
  • 95% Line:95%用户请求响应时间,请参考90% Line解释。
  • 99% Line:99%用户请求响应时间,请参考90% Line解释。
  • Min:最小响应时间,所有请求样本中的最小响应时间。
  • Max:最大响应时间,所有请求样本中的最大响应时间。
  • Error%:本次测试中“出现错误的请求数/请求的总数”百分比值。
  • Throughput:吞吐量,就是服务器在一定时间范围内处理的请求数。在本报告中它的含义其实其实是吞吐率,表示每秒完成的请求数(Request per Second),此指标代表服务器的处理能力,比如支付宝峰值处理量达到12万笔/秒。
  • Received KB/sec:每秒从服务器端接收到的数据量。
  • Sent KB/sec:每秒从客户端发送到服务器端的数据量。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 吾非同 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档