JMeter支持仪表板图表和报告生成 数据从一个测试计划。
这一章描述了如何配置和使用生成器。
概述
JMeter的仪表板生成器是一个模块化的扩展。 它的缺省行为是读取和处理样本 CSV文件生成HTML文件包含图表视图。 它可以生成报告的负载测试或需求。
这份报告提供了以下指标:
- APDEX (应用程序性能指标)表,计算每笔交易APDEX的容忍和满足阈值基于可配置的值
- 请求总结图显示了成功和失败的交易比例:
- 数据表中提供一个表总结每个事务的所有指标包括3可配置的百分位数:
- 错误表提供一个汇总所有错误及其比例的总要求:
- 缩放的图表,您可以检查/取消显示/隐藏它的每一笔交易:
- 随时间的响应时间:
- 随着时间的推移字节吞吐量:
- 随着时间的推移延迟:
- 每秒点击:
- 每秒响应代码:
- 每秒事务数:
- 响应时间和每秒请求:
- 延迟vs每秒请求:
- 响应时间百分位数:
- 活动线程结束时间:
- 次vs线程:
- 响应时间分布:
- 随时间的响应时间:
配置仪表板的一代
仪表板代使用JMeter属性来定制 报告。 一些属性是用于一般设置等 用于一个特定的配置图配置或出口国。
需求
使发电机运行,输入CSV文件 必须包含某些必需的数据。 检查你的JMeter 配置遵循这些设置(这是默认值):
jmeter.save.saveservice.bytes = true jmeter.save.saveservice.label = true jmeter.save.saveservice.latency = true jmeter.save.saveservice.response_code = true jmeter.save.saveservice.response_message = true jmeter.save.saveservice.successful = true jmeter.save.saveservice.thread_counts = true jmeter.save.saveservice.thread_name = true jmeter.save.saveservice.time = true # the timestamp format must include the time and should include the date. # For example the default, which is milliseconds since the epoch: jmeter.save.saveservice.timestamp_format = ms # Or the following would also be suitable jmeter.save.saveservice.timestamp_format = yyyy/MM/dd HH:mm:ss
-
jmeter.save.saveservice.assertion_results_failure_message = true
- 如果你使用一个事务控制器,取消选中对应的复选框 生成父样本
一般设置
jmeter.reportgenerator.
参数
- aggregate_rpt_pct1:默认为90
- aggregate_rpt_pct2:默认为95
- aggregate_rpt_pct3:默认为99
您可以定义一些整体属性使用的 发电机的配置。 这些属性是自由命名 但是你应该使用前缀
jmeter.reportgenerator.为了避免属性重叠。
例如:
- 属性定义:
-
jmeter.reportgenerator.overall_granularity=60000
- 属性引用:
-
${jmeter.reportgenerator.overall_granularity}
图设置
每个属性描述图配置必须前缀 与
jmeter.reportgenerator.graph.其次是图形标识符。
一般性质
所有的图表都支持这些属性:
参数
必须扩展的类图org.apache.jmeter.report.processor.graph.AbstractGraphConsumer。
看到 默认图部分 为更多的细节。
特定属性
具体的图形属性必须使用前缀:
jmeter.reportgenerator.graph.<graph_id>.property属性的名称将使用驼峰式大小写映射 转换和匹配方法的类 被称为属性值作为参数。
例如:
jmeter.reportgenerator.graph.<graph_id>.property.set_granularity=150归纳方法的调用 setGranularity(150) 在 图的实例。
出口设置
每个属性配置必须描述一个出口国 前缀与
jmeter.reportgenerator.exporter其次是出口国标识符。
一般性质
所有出口商都支持这些属性:
参数
出口国的类必须实现org.apache.jmeter.report.dashboard.DataExporter。
格式:正则表达式。 默认值:"
特定属性
特定出口国属性必须使用前缀
jmeter.reportgenerator.exporter.<exporter_id>.property
参数
图形属性
图形属性允许出口商覆盖一些图表数据。
他们必须使用前缀:
jmeter.reportgenerator.exporter.<exporter_id>.graph_options.<graph_id>
参数
过滤机制
不同的过滤部分 一般性质 丢弃数据计算之前,这里的吗 过滤后进行计算和服务 简化最终报告。
房地产 series_filter 允许过滤这一系列的图表(分别地。 行 使用正则表达式匹配汇总表) 系列的名称(分别地。 行)。 然而,即使的名称 系列(分别地。 行)匹配滤波器、设置 其他的可以导致其滤波特性 丢弃。 相反如果没有匹配的, 其他属性可以保持它。
下表显示的设置过滤 属性的作品。
filter_only_sample_series | 图/总结支持控制器的歧视 | 当前系列是一个控制器系列 | show_controllers_only | 被丢弃的 |
---|---|---|---|---|
假 | 假 | - - - - - - | 假 | 假 |
真正的 | ||||
- - - - - - | 假 | |||
真正的 | ||||
真正的 | 假 | 假 | ||
真正的 | ||||
真正的 | 假 | |||
真正的 | ||||
真正的 | 假 | - - - - - - | 假 | |
真正的 | ||||
- - - - - - | 假 | |||
真正的 | ||||
真正的 | 假 | 假 | ||
真正的 | 真正的 | |||
真正的 | 假 | 假 | ||
真正的 |
filter_only_sample_series | 图/总结支持控制器的歧视 | 保持 |
---|---|---|
假 | 假 | 假 |
真正的 | ||
真正的 | 假 | 真正的 |
真正的 | 假 |
- 如果你设置的属性 show_controllers_only 和图配置为排除 控制器。
- 如果属性 series_filter 比赛没有一个系列。
示例配置
你可以复制以下配置user.properties 文件为了测试报告生成器。
# Configure this property to change the report title #jmeter.reportgenerator.report_title=Apache JMeter Dashboard # Change this parameter if you want to change the granularity of over time graphs. #jmeter.reportgenerator.overall_granularity=60000 Change this parameter if you want to change the granularity of Response time distribution # Set to 500 ms by default #jmeter.reportgenerator.graph.responseTimeDistribution.property.set_granularity=500 # Change this parameter if you want to override the APDEX satisfaction threshold. jmeter.reportgenerator.apdex_satisfied_threshold=1500 # Change this parameter if you want to override the APDEX tolerance threshold. jmeter.reportgenerator.apdex_tolerated_threshold=3000 # Sets the destination directory for generated html pages, it is better to change it for every generation # This will override the value set through -o command line option # jmeter.reportgenerator.exporter.html.property.output_dir=/tmp/test-report # Indicates which graph series are filtered (regular expression) # In the below example we filter on Search and Order samples # Note that the end of the pattern should always include (-success|-failure)? # Transactions per second suffixes Transactions with "-success" or "-failure" depending # on the result #jmeter.reportgenerator.exporter.html.series_filter=((^Search)|(^Order))(-success|-failure)? # Indicates whether series filter apply only on sample series jmeter.reportgenerator.exporter.html.filters_only_sample_series=true
这种配置允许生成报告地点:
- 随着时间的推移图有一个时间粒度等于1分钟。
- ADPEX满足阈值的计算是1秒半。
- ADPEX耐受阈值计算是3秒。
- 在目录中生成的HTML文件 / tmp /测试报告 。
- 只有系列始于”这个名字 s0 ”或“ s1 ”所示。
- 前面的过滤器只适用于图表(分别地。 汇总表)系列(分别地。 行)匹配样本
生成报告
报告生成可以作为一个独立的过程 示例日志文件或后自动运行负载测试。
生成日志文件从现有的样例CSV
使用下面的命令:
jmeter -g <log file> -o <Path to output folder>
负载测试后一代
使用下面的命令:
jmeter -n -t <test JMX file> -l <test log file> -e -o <Path to output folder>
默认图
本报告提供的所有图形引擎位于 包 org.apache.jmeter.report.processor.graph.impl
仪表板发生器提供了以下图表类:
图 | 描述 | 支持控制器的歧视 |
---|---|---|
ActiveThreadsGraphConsumer | 这张图代表活动线程的数量。 | 假 |
BytesThroughputGraphConsumer | 这张图代表了接收和发送数据的吞吐量 随着时间的推移。 | 假 |
CodesPerSecondGraphConsumer | 这张图代表的速度响应代码。 | 假 |
HitsPerSecondGraphConsumer | 这张图代表完成请求的速度 时间。 | 假 |
LatencyOverTimeGraphConsumer | 这张图代表的平均延迟时间。 | 真正的 |
LatencyVSRequestGraphConsumer | 这张图代表了中值和平均等待时间 根据当前请求的数量。 | 假 |
ResponseTimeDistributionGraphConsumer | 这张图代表样本的分布 根据他们的时间和名称。 | 真正的 |
ResponseTimeOverTimeGraphConsumer | 这张图代表了平均响应时间。 | 真正的 |
ResponseTimePercentilesGraphConsumer | 这张图代表了时间的百分位数 随着时间的推移。 | 真正的 |
ResponseTimeVSRequestGraphConsumer | 这张图代表了中值和平均响应时间 根据当前请求的数量。 | 假 |
TimeVSThreadGraphConsumer | 这张图代表了平均响应时间 根据当前活动线程的数量。
*聚合系列代表平均水平 响应时间的数量无关 当前活动线程。 这些系列 由一个唯一的点,因为数量的表示 当前活动线程是聚合 平均。 所以对于这些点:
|
真正的 |
TransactionsPerSecondGraphConsumer | 这张图代表了交易的速度 样品名称。 | 真正的 |