我相信你赞成:有不少方法能够收集和解释JMeter结果,你会感到迷茫。html
嗯,看完这篇文章后,您将了解收集和分析结果的12种不一样方法!java
咱们将探索每种可能的方式来得到富有洞察力的指标,包括图形,图表,表格,HTML报告等。JMeter是一个如此复杂的工具,有不少惊人的可能性,很难知道该怎么作。node
关于如何分析JMeter结果的最终指南将启动您的JMeter知识。git
本教程假设您已经安装了如下软件:github
在整个指南中,使用如下Sample JMX。这个JMX 基于Docker Image中捆绑的Java JPetstore 测试咱们的演示应用程序。docker
JMeter Metrics在如下部分中被普遍使用,所以若是您对其定义感到满意,则会更好:shell
线程名称:派生自线程组名称和组内的线程。名称的格式为groupName +“”+ groupIndex +“ - ”+ threadIndex其中:数据库
吞吐量:按请求/时间单位计算。时间从第一个样品的开始到最后一个样品的结束计算。公式为:吞吐量=(请求数)/(总时间)。apache
你怎么知道一个指标是使人满意仍是糟糕?如下是一些解释:json
看,这很简单!大多数数字应该尽量低。可是,根据具体状况,您的老板可能会在给定负载下为您提供预期的响应时间。使用它们来计算每一个请求的Apdex:
Apdex(应用程序性能指数)是由公司联盟开发的开放标准。它定义了一种报告和比较计算中软件应用程序性能的标准方法。
要在无头(非GUI)模式下运行JMeter,这意味着没有任何UI,要运行负载测试,请使用如下命令:
jmeter -n -t scenario.jmx -l jmeter.jtl
命令行具备如下参数:
请参阅咱们的博客文章如何优化JMeter进行大规模测试,以了解为何在非GUI模式下运行相当重要。
要在您本身的计算机上运行演示应用程序,您须要:
要运行JPetstore演示应用程序,只需执行命令行便可docker run -d -p 8080:8080 jloisel/jpetstore6
。
打开浏览器,而后导航到http://localhost:8080/actions/Catalog.action
。它应该显示JPetstore首页。
将运行如下测试:
测试将运行总共4分钟,其中20个并发用户峰值负载。
JMeter有许多UI Listener,可用于直接在JMeter UI中查看结果:
一些侦听器已被省略:这些侦听器仅用于调试目的。这些侦听器有助于诊断脚本问题,但无心提供性能指标,以下所示:
做为通常经验法则,请避免使用UI Listeners。它们消耗大量内存。它们不适合实际负载测试。有些甚至可能只运行几个并发线程组而触发和Out Of Memory错误。
根据结果监听器的放置位置,它会收集不一样的指标。JMeter结果侦听器从同一级别或更低级别的全部元素收集结果。所以,建议将监听器置于测试计划级别以收集全部线程组结果。
查看结果树本质上是一个调试发送的请求和收到的响应的工具。查看脚本是否正确运行颇有用。可是,当许多并发用户正在运行时,它不适合查看结果。它会很快耗尽内存,由于它会将全部结果保存在主内存中。
单击每一个请求时可使用某些指标,以下所示:
Thread Name: JPetstore 1-1 Sample Start: 2017-10-06 10:42:09 CEST Load time: 30 Connect Time: 0 Latency: 29 Size in bytes: 1530 Sent bytes:582 Headers size in bytes: 196 Body size in bytes: 1334 Sample Count: 1 Error Count: 0 Data type ("text"|"bin"|""): text Response code: 200 Response message: OK
我建议使用这个监听器:
聚合图是一个UI Listener,它为每一个请求和事务控制器提供了一些有用的测试范围指标。它还包括一个条形图,能够经过许多不一样的设置进行调整以知足您的需求。我必须说,有太多的设置,更糟糕的是,这些设置都没有保存在JMX中。关闭JMeter时松开它们。
虽然,我必须认可可以将图表导出为PNG并将表格导出为CSV以便未来在自定义设计的报告中使用,这很是好。
度量标准是测试范围的,这意味着您能够得到整个测试请求的平均响应时间。可用的指标是:
与任何其余UI Listener同样,我不建议将其用于实际负载测试。
聚合报告与聚合图很是类似,仅包含度量表。在运行无头负载测试(没有启动UI)时可使用此侦听器,由于统计信息能够保存在CSV文件中供之后使用。它包含与聚合图彻底相同的指标。而后,可使用这些度量来使用Word编写报告。
JMeter摘要结果监听器在JMeter控制台的负载测试期间输出结果,以下所示。
它每隔几秒就会显示一些常规指标:
Generate Summary Results + 5 in 00:00:07 = 0.8/s Avg: 159 Min: 29 Max: 238 Err: 1 (20.00%) Active: 1 Started: 1 Finished: 0 Generate Summary Results + 7 in 00:00:22 = 0.3/s Avg: 163 Min: 54 Max: 239 Err: 0 (0.00%) Active: 0 Started: 1 Finished: 1 Generate Summary Results = 12 in 00:00:28 = 0.4/s Avg: 161 Min: 29 Max: 239 Err: 1 (8.33%) Generate Summary Results + 17 in 00:00:25 = 0.7/s Avg: 185 Min: 28 Max: 524 Err: 3 (17.65%) Active: 3 Started: 3 Finished: 0 Generate Summary Results + 32 in 00:00:30 = 1.1/s Avg: 160 Min: 28 Max: 239 Err: 2 (6.25%) Active: 2 Started: 5 Finished: 3 Generate Summary Results = 49 in 00:00:55 = 0.9/s Avg: 169 Min: 28 Max: 524 Err: 5 (10.20%) Generate Summary Results + 29 in 00:00:30 = 1.0/s Avg: 164 Min: 28 Max: 246 Err: 3 (10.34%) Active: 3 Started: 8 Finished: 5 Generate Summary Results = 78 in 00:01:25 = 0.9/s Avg: 167 Min: 28 Max: 524 Err: 8 (10.26%) Generate Summary Results + 31 in 00:00:30 = 1.0/s Avg: 165 Min: 28 Max: 242 Err: 2 (6.45%) Active: 2 Started: 10 Finished: 8 Generate Summary Results = 109 in 00:01:55 = 0.9/s Avg: 166 Min: 28 Max: 524 Err: 10 (9.17%) Generate Summary Results + 4 in 00:00:05 = 0.8/s Avg: 168 Min: 138 Max: 181 Err: 0 (0.00%) Active: 0 Started: 10 Finished: 10 Generate Summary Results = 113 in 00:02:00 = 0.9/s Avg: 166 Min: 28 Max: 524 Err: 10 (8.85%)
在无头模式下运行JMeter时,默认状况下已输出这些日志行。在Jenkins上运行JMeter时,JMeter Jenkins插件可以解析这些行并输出图形。
JMeter图表结果显示经常使用指标的线图和数字数字:
这个结果听众不值得。图表几乎没法读取。而且,如JMeter文档中所述:
在负载测试期间不得使用图形结果,由于它消耗了大量资源(内存和CPU)。仅用于功能测试或测试计划调试和验证期间。
总而言之,大多数UI监听器很是适合调试/测试目的。不要指望达到高负荷(> = 500个用户),谨慎使用它们。这些侦听器设计用于在JMeter UI中运行负载测试时快速获取指标,以实现轻负载。(<= 50个并发用户)
即便是中等负载(100-500个并发用户)也可使用它们,但不要指望使用JMeter UI运行分布式JMeter测试。这不是目的。记住JMeter默认配置512MB堆内存,至关低。虽然你能够增长JMeter分配的内存,但它会感受不会再漂浮在船上了。
如今咱们已经测试了JMeter中可用的大多数UI监听器,问题显然是:在运行实际负载测试时咱们可使用哪些监听器?
无头JMeter监听器(或非UI)专门设计用于在命令行运行JMeter时工做。这些侦听器是在运行实际负载测试时使用的侦听器,由于它们使用的内存远少于UI侦听器。怎么样?这些监听器不会将结果保留在内存中,它们主要负责将结果卸载到另外一个介质。
现有的非GUI JMeter监听器是:
这是JMeter中最有用的监听器。它根据外部文件中的配置保存性能指标:JTL文件。JMeter JTL文件是分析结果的最佳方式,但有一个缺点:您须要另外一个工具来执行数据挖掘。
目前有两种类型的JTL文件:
XML文件能够包含更多类型的信息,但要大得多。所以,建议坚持使用CSV格式。生成的jmeter.jtl包含以下数据:
timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,Latency,IdleTime,Connect 1507280285885,221,Home page,,"Number of samples in transaction : 1, number of failing samples : 1",JPetstore 1-1,,false,,59592,10154,1,1,50,1,23 1507280286687,29,signinForm,200,OK,JPetstore 1-1,text,true,,1531,582,1,1,29,0,0 1507280286108,29,Login page,200,"Number of samples in transaction : 1, number of failing samples : 0",JPetstore 1-1,,true,,1531,582,1,1,29,580,0 1507280286819,147,viewCatalog,200,OK,JPetstore 1-1,text,true,,3460,11027,1,1,27,0,0 1507280287967,233,signinAccount,200,OK,JPetstore 1-1,text,true,,3719,13270,1,1,55,0,27 1507280286717,380,Signin,200,"Number of samples in transaction : 2, number of failing samples : 0",JPetstore 1-1,,true,,7179,24297,1,1,82,1104,27 1507280292035,162,viewCategory,200,OK,JPetstore 1-1,text,true,,2600,6502,1,1,56,0,26 1507280288201,162,ViewCategory,200,"Number of samples in transaction : 1, number of failing samples : 0",JPetstore 1-1,,true,,2600,6502,1,1,56,3834,26 1507280297083,174,viewProduct,200,OK,JPetstore 1-1,text,true,,2643,6804,1,1,55,0,26 1507280292198,174,ViewProduct,200,"Number of samples in transaction : 1, number of failing samples : 0",JPetstore 1-1,,true,,2643,6804,1,1,55,4886,26 1507280301651,162,addItemToCart,200,OK,JPetstore 1-1,text,true,,2827,6824,1,1,54,0,25 1507280304617,169,newOrderForm,200,OK,JPetstore 1-1,text,true,,3026,6804,1,1,55,0,27 1507280306851,173,setBillingInfo,200,OK,JPetstore 1-1,text,true,,2759,8194,1,1,63,0,28 1507280310018,163,confirmOrder,200,OK,JPetstore 1-1,text,true,,2980,6475,1,1,56,0,26
咱们将在本指南的后面部分看到如何使用保存到JTL文件中的结果进行进一步处理和深刻分析。JTL是分析JMeter结果的最有效方法。
优势:
缺点:
让咱们看看咱们如何解释这些JTL文件。
%APACHE_JMETER_HOME%/ extras包含几个xsl文件,这些文件专门用于处理XML格式的JTL文件并输出漂亮的报告。寻找如下文件:
下面的过程说明了如何使用这些XSL样式表和Microsoft Excel得到不错的报告。
如何用Excel分析JTL文件
./bin/jmeter -n -t jpetstore.jmx -l jmeter.jtl
,Creating summariser <summary>
Created the tree successfully using jpetstore.jmx
Starting the test @ Fri Oct 06 15:03:42 CEST 2017 (1507295022425) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 12 in 00:00:18 = 0.7/s Avg: 187 Min: 30 Max: 418 Err: 2 (16.67%) Active: 2 Started: 2 Finished: 0 summary + 27 in 00:00:29 = 0.9/s Avg: 168 Min: 29 Max: 270 Err: 2 (7.41%) Active: 2 Started: 4 Finished: 2 summary = 39 in 00:00:47 = 0.8/s Avg: 173 Min: 29 Max: 418 Err: 4 (10.26%) summary + 33 in 00:00:31 = 1.1/s Avg: 163 Min: 28 Max: 259 Err: 3 (9.09%) Active: 2 Started: 7 Finished: 5 summary = 72 in 00:01:18 = 0.9/s Avg: 169 Min: 28 Max: 418 Err: 7 (9.72%) summary + 27 in 00:00:29 = 0.9/s Avg: 165 Min: 29 Max: 246 Err: 2 (7.41%) Active: 2 Started: 9 Finished: 7 summary = 99 in 00:01:47 = 0.9/s Avg: 168 Min: 28 Max: 418 Err: 9 (9.09%) summary + 14 in 00:00:13 = 1.1/s Avg: 163 Min: 28 Max: 246 Err: 1 (7.14%) Active: 0 Started: 10 Finished: 10 summary = 113 in 00:02:00 = 0.9/s Avg: 167 Min: 28 Max: 418 Err: 10 (8.85%) Tidying up ... @ Fri Oct 06 15:05:43 CEST 2017 (1507295143106) ... end of run
<?xml-stylesheet type="text/xsl" href="PATH_TO_jmeter-results-report_21.xsl"?>
以后<?xml version="1.0" encoding="UTF-8"?>
,请注意,它不适用于Open Office。仅支持Microsoft Office。
借助新推出的JMeter报告仪表板,这一传统解决方案再也不具备吸引力。与JMeter 3.0以来提供的新JMeter HTML报告相比,该报告看起来过期了。
可使用单独的命令行在测试结束时生成HTML报告仪表板。此报告很是丰富,并显示许多不一样的指标。有关全部可自定义设置的完整列表,请参阅JMeter网站上的生成仪表板。
一旦你有一个包含全部结果的JTL,运行:
./bin/jmeter -g JTL_FILE -o OUTPUT_FOLDER
哪里:
命令行执行可能须要一段时间,具体取决于JTL文件大小。完成后,终端内不该显示任何错误。报告已在给定的输出文件夹中准备就绪。
优势:
缺点:
从JMeter 3.0开始,HTML Report Dashboard向前迈进了一大步,简化了JMeter测试结果分析。
报告摘要包含如下信息:
Statistics表为已执行的每一个请求提供全局测试统计信息:
执行:命中和错误的数量,
响应时间(ms):响应时间(以毫秒为单位)
网络:吞吐量,以KB /秒为单位
这些行能够经过上面的任何统计信息进行排序,从而能够轻松找到致使瓶颈的请求。经过下降平均值来下达订单请求,您应该会在统计信息表中看到最慢的请求。
错误表提供了有关负载测试期间遇到的错误的更多详细信息。对于每种类型的错误,您将看到:
响应时间随时间变化图表
此图表显示整个测试过程当中每笔交易的平均响应时间。遗憾的是,若是您有大量交易,图表可能看起来混乱,由于全部交易都显示在其上。
响应时间百分位数
活动线程,随时间的吞吐量
活动线程,随时间的吞吐量
还有许多其余图表:
吞吐量:
响应时间:
HTML报告显然是遇上一些昂贵工具(如LoadRunner或NeoLoad)的一个很好的步骤。固然,为了知足您的需求,能够更好地定制报告。不管如何,与集成的UI监听器相比,它在改进JMeter测试结果分析方面是一个巨大的飞跃。
考虑到JMeter是一个免费提供的开源负载测试工具,我很惊讶地看到有多少工具能够分析测试结果。咱们还没完成!
JMeter的Backend Listener容许插入外部数据库来存储测试结果和性能指标。
在本节中,咱们将结合几个开源工具来实时收集和可视化JMeter结果:
JMeter发送时间序列数据库的度量标准。下面的列表描述了可用的指标。
线程指标:
响应时间指标:
如下常量是:
咱们要下载并安装InfluxDB:
ubuntu@desktop:~$ wget https://dl.influxdata.com/influxdb/releases/influxdb_1.3.6_amd64.deb ubuntu@desktop:~$ sudo dpkg -i influxdb_1.3.6_amd64.deb Selecting previously unselected package influxdb. (Reading database ... 264577 files and directories currently installed.) Preparing to unpack influxdb_1.3.6_amd64.deb ... Unpacking influxdb (1.3.6-1) ... Setting up influxdb (1.3.6-1) ... Created symlink from /etc/systemd/system/influxd.service to /lib/systemd/system/influxdb.service. Created symlink from /etc/systemd/system/multi-user.target.wants/influxdb.service to /lib/systemd/system/influxdb.service. ubuntu@desktop:~$
InfluxDB设置可能因操做系统而异。有关更多信息,请参阅InfluxDB安装。
ubuntu@desktop:~$ sudo service influxdb start
,influx
在终端中运行命令以链接到数据库,ubuntu@desktop:~$ influx Connected to http://localhost:8086 version 1.3.6 InfluxDB shell version: 1.3.6 > show databases name: databases name ---- _internal > CREATE DATABASE jmeter >
很棒,InfluxDB正在运行!
Grafana是一个仪表板,可用于可视化JMeter发送到InfluxDB数据库的指标。
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana_4.5.2_amd64.deb sudo dpkg -i grafana_4.5.2_amd64.deb
http://localhost:3000
打开grafana仪表板。使用admin
的登陆名和密码。而后使用如下设置配置DataSource:
http://localhost:8086/
,如今,让咱们为咱们的测试计划添加一个后端监听器:
使用如下设置配置后端侦听器:
jmeter
数据库,而且咱们使用默认端口在本地计算机上运行它,所以在咱们的示例中,url将是:http://127.0.0.1:8086/write?db=jmeter
false
若是你想在数据库中保留详细的指标,90;95;99
默认状况下,定义正在处理并发送到InfluxDB的百分位数如今,是时候在JMeter中运行测试了。在GUI或非GUI模式下启动测试。
要检查结果是否已正确发送到InfluxDB,请运行如下命令:
curl 'http://localhost:8086/query?pretty=true' --data-urlencode "db=jmeter" --data-urlencode "q=SHOW SERIES" { "results": [ { "statement_id": 0, "series": [ { "columns": [ "key" ], "values": [ ... [ "events,application=jpetstore,title=ApacheJMeter" ], [ "jmeter,application=jpetstore,responseCode=0,responseMessage=Number\\ of\\ samples\\ in\\ transaction\\ :\\ 1\\,\\ number\\ of\\ failing\\ samples\\ :\\ 1,transaction=Home\\ page" ], ... ] } ] } ] }
返回的Json文档应包含多个值。让咱们配置一个Grafana仪表板来显示Hits / sec。
建立JMeter仪表板
如今,让咱们配置指标:
它应该生成下面屏幕截图中显示的图表。
使用JMeter BackendListener在Grafana中命中/秒图表
本身配置grafana仪表板是一项繁琐而艰巨的任务,特别是若是您没有查询指标的扩展知识。他们发布了预先配置的JMeter负载测试仪表板。
此仪表板仅适用于如下后端侦听器插件:JMeter InfluxDB Writer
安装JMeter InfluxDB Writer
建立专用数据库
此设置须要单独的数据库:
novatec
使用如下命令在InfluxDB中建立新数据库:ubuntu@desktop:~$ curl -i -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE novatec" HTTP/1.1 200 OK Connection: close Content-Type: application/json Request-Id: b04edfe5-acd4-11e7-8647-000000000000 X-Influxdb-Version: 1.3.6 Date: Mon, 09 Oct 2017 09:31:54 GMT Transfer-Encoding: chunked {"results":[{"statement_id":0}]}
配置JMeter InfluxDB Writer
使用如下设置配置后端侦听器:
让其余设置使用默认设置。
JMeter BackendListener使用NovaTec InfluxDB Writer插件
在Grafana建立新的Data-Source Novatec
novatec
。导入Novatec仪表板
请按照文档说明如何导入Grafana仪表板的详细信息。
1152
,即Novatec仪表板的ID,novatec
数据库的数据源。您应该可以在仪表板中看到动画图表。
JMeter Novatec Dashboard在Grafana
此仪表板经过图形,饼图等提供了许多有趣的指标:
InfluxDB Studio是InfluxDB的UI管理工具。它在Windows上运行,容许使用用户友好的UI管理InfluxDB数据库。
咱们强烈建议将NovaTec插件与NovaTec JMeter仪表板结合使用。它提供了一个开箱即用的仪表板,其中包含许多有趣的指标,可随时使用。本身配置Grafana可能很困难,须要了解InfluxDB查询的工做原理。
正如咱们所看到的,使用BackendListener进行完整的工做设置可能须要至关长的时间来进行设置。咱们甚至没有谈论维护和更新。这就是出现像OctoPerf,Blazemeter或Flood.io这样的云解决方案的缘由。
这些Saas工具提供了运行JMeter测试和收集指标的工具。每一个工具都有本身的基于专有技术的报告系统。咱们将在这里探索每一个工具并比较他们的报告功能。目标是概述每一个JMeter云解决方案的报告功能。
每一个工具将用于运行相同的测试:
请记住,咱们正努力尽量客观。市场上还有许多其余工具可用于JMeter结果分析。所以,咱们只选择了最受欢迎的工具。
Blazemeter是市场上第一款容许用户在云中扩展负载测试的工具。Blazemeter是一家由Alon Girmonsky于2011年12月创立的美国公司。
在Blazemeter上开始测试
火焰计总结报告
摘要报告提供如下统计信息:
它包括两个图:
摘要是静态的:没法添加或删除指标。
时间线报告
时间线报告提供了一个巨大的图表,其曲线能够自定义。能够单独选择和绘制交易。不保留采样器层次结构有点使人遗憾:全部事务和请求都在一个列表中。若是同时绘制许多请求,时间线可能会变得很是混乱。
请求统计
请求统计信息提供了一个表,其中包含每一个事务或请求的全局统计信息。如下统计数据可用:
整个表格能够下载为CSV文件进行外部处理。统计数据能够按时间过滤。
错误报告
此报告显示测试运行期间收到的全部错误,按标签(页面)和错误类型分类。
JMeter日志
每一个引擎的JMeter日志均可用。能够直接在浏览器中下载或查看日志。
原始测试配置
本节提醒原始测试配置。
执行摘要
执行摘要是测试报告的可打印版本。它包含前面部分中的全部内容(摘要,TimeLine等)。
洪水是Blazemeter的挑战者。这家澳大利亚公司由Ivan Vanderbyl和Tim Koopsman于2013年9月创立。它们提供与BlazeMeter几乎相同的功能:上传您的JMX脚本,运行测试并分析结果。
对洪水IO的启动测试
TimeLine包含一个包含可选事务的主图
TimeLine概述了测试结果指标。您能够经过在下表中选择它来绘制单个交易指标。
JMeter记录实时尾部和下载
在测试运行时,能够实时查看JMeter日志。能够在测试结束时下载日志。
交易/请求详情
经过选择单个请求或事务,您能够访问子报告,该报告提供有关该事务的大量指标。(平均值,最小值,最大值,标准误差,百分位数,传递与失败等等)在负载测试期间,一些随机点也会存储一些请求和响应。
度量标准能够做为CSV文件下载以进行外部处理。
OctoPerf是一家成立于2016年9月的法国负载测试公司.OctoPerf的报告系统是一个可定制的模块化系统。能够从新排列如下任何报告项目,从而使报告系统动态化。该报告已预先配置了某些报告项目。能够根据须要添加或删除项目。
在OctoPerf上开始测试
有关更多信息,请阅读有关报告项目的文档。
测试摘要
测试摘要显示有关测试配置的详细信息,如:
统计摘要
统计摘要提供测试范围统计。能够自定义如下设置:
有30多个指标可供使用。
OctoPerf报告系统能够提供无限数量的图表,每一个图表配置不一样。每一个图形都有可自定义的曲线,每一个图形从1到4条曲线。即便在同一图表上,您也能够绘制性能指标和监控指标的图表。
结果表提供每一个事务或请求的全局统计信息。
阈值表显示测试期间发生的阈值警告和错误。阈值与监视功能相关联。监控容许您捕获后端服务器监控指标。
顶部图表项为给定指标提供容器或http请求的顶部。此图表很是适合深刻查找慢速业务事务和/或请求。
饼图有助于快速了解HTTP响应代码,HTTP方法和HTTP响应媒体类型从新分区。它容许快速发现Web应用程序是否按预期运行。
百分位数图表显示了必定百分比的观测值出现的点。例如,第95百分位数是大于观察值的95%的值。
错误表提供有关测试期间发生的每一个错误的详细信息。它容许了解负载测试期间服务器端发生的状况。
每一个错误的细节
对于每一个记录的错误,您能够查看从服务器发送的请求和响应。
OctoPerf容许您在执行虚拟用户验证或负载测试后查看JMeter日志。您还能够经过单击“下载”按钮下载完整的日志文件。单击它时会下载.log.gz。您须要像7Zip这样的文件压缩工具来提取它。
JMeter JTL文件在测试结束时也会自动集中。
你猜怎么着?咱们编制了一个比较表,直接比较了市场上前三大的JMeter云解决方案:
OctoPerf | Blazemeter | Flood.io | |
录音机 | |||
HAR进口 | |||
单个URL / REST | |||
Jmeter导入 | |||
加特林进口 | |||
相关性 | 在Jmeter | 在Jmeter | |
变量 | 在Jmeter | 在Jmeter | |
验证脚本 | 在Jmeter | 在Jmeter | |
主机文件覆盖 | |||
SLA | |||
沙箱(免费单元测试) | 每个月100次测试 | 仅限10项测试 | 仅5个小时 |
带宽仿真 | 全球惟一 | ||
延迟仿真 | 全球惟一 | ||
想一想时间 | 全球惟一 | 在Jmeter | |
起搏 | |||
减速 | |||
命中和RPS加载策略 | 在Jmeter | ||
真正的浏览器监控 | |||
LG启动和配置 | 自动 | 手册 | 手册 |
LG监控 | |||
一次测试中有几个JMX | |||
预测试 | |||
实时过滤器 | |||
持续时间筛选 | |||
自动SLA | Apdex的 | Apdex的 | |
保留IP | |||
默认视图 | 好 | 好 | 平均 |
总体可用性 | 好 | 平均 | 平均 |
协做访问 | |||
日志 | |||
错误详情 | 有详细信息 | ||
可编辑的图表 | 只有一个图表 | ||
导出PDF | |||
导出CSV | 经过JTL | ||
自定义报告文本 | |||
对照 | |||
趋势 | |||
报告公共连接 | |||
报告可用性 | 无限 | 1周到无限制 | 1至12个月 |
Jmeter版本 | 支持最新的Jmeter版本 | 支持几种Jmeter版本 | 仅限Jmeter的一个版本,目前不是最新版本(3.1而不是3.3) |
请随意询问其余功能,以便从评论中进行检查。
收集和显示JMeter性能指标有许多不一样的方法。从DIY开源工具到专有解决方案,每一个人都有一个解决方案。你应该使用哪一种解决方案?这是一个简短的总结。
所选择的解决方案高度依赖于如下因素:
开源和DIY解决方案一般是免费的,但须要花费大量时间。专有解决方案须要成本,但更有效。不管您有时间,预算仍是二者,都有适合每一个人的解决方案。