首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >教你一招搞定Jmeter可视化报告

教你一招搞定Jmeter可视化报告

作者头像
TestOps
发布2022-04-07 13:29:16
发布2022-04-07 13:29:16
1K00
代码可运行
举报
文章被收录于专栏:TestOps云层TestOps云层
运行总次数:0
代码可运行

01

jmeter报告的可视化

一直以来,jmeter作为开源压测工具被广大测试工程师们所偏好,不仅仅其开源便于二次扩展,更在于其本身强大丰富的功能,让我们可以不用编写代码也能做好性能测试。但是,jmeter本身在报告这块做的差强人意,我们希望能够将数据更好的收集和展示以便分析,今天小编就给大家介绍Influxdb+Grafana+jmeter这套组合,实现jmeter报告的可视化展示。

02

为何要做可视化?

方便测试结果数据落地以及更好的分析

将聚合报告这部分的工作拆解出来,给jmeter减负

汇集各方性能数据信息,统一管理

03

工作环境搭建

官网下载influxdb并安装:https://www.influxdata.com/get-influxdb/

代码语言:javascript
代码运行次数:0
运行
复制
wget et https://d1.inf1uxdata.com/inf1uxdb/re1eases/inf1uxdb-1.6.2.x86_64.rpm 

sudo yum localinstall influxdb-1.6.2.x86_86_64. rpm 

修改influxdb配置文件:

代码语言:javascript
代码运行次数:0
运行
复制
vi /etc/influxdb/influxdb. conf 

修改内容如下:

代码语言:javascript
代码运行次数:0
运行
复制
[[graphite]] 

            enabled = true 

            bind-address = ":2003" 

            database = "jmeter" 

            retention-policy = ""

            protocol = "tcp"

            batch-size = 5000 

            batch-pending = 10 

            batch-timeout = "is"

            consistency-level = "one" 

            separator = "."

            udp-read-buffer = 0

启动influxdb服务:

代码语言:javascript
代码运行次数:0
运行
复制
[root@VM_0_12_centos ~] # service influxdb start 

Redirecting to /bin/systemctl start influxdb. service 

登录influxdb管理首页 ip+8083端口,并创建一个数据库:

启动jmeter,配置一条请求信息,添加Backend Listener设置配置信息:

安装Grafana 地址:https://grafana.com/

并启动:

代码语言:javascript
代码运行次数:0
运行
复制
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.2.0-1.x86_64.rpm

sudo yum localinstall grafana-4.2.0-1.x86_64.rpm

service grafana-server start
starting grafana-server(via systemctl):     [ OK ]

打开Grafana首页 ip+3000端口:

创建influxdb数据源:

创建dashboard:

添加Graph面板:

进行数据绑定:

Jmeter启动进行压测,过程中可实时查看数据情况

至此jmeter的一些压测数据就会展示到Grafana中,我们可以按照自己的实际需要配置监控图标,这样一来我们就可以随时随地查看当前压测情况,也可以随时查看历史压测数据情况。

是不是略显高大上啊,当然我们可以从官网中下载一些监控模板,这样我们就可以省下很多自行配置图标的过程。

04

相关数据指标

线程数/用户相关指标:

代码语言:javascript
代码运行次数:0
运行
复制
test.minAT-Min active threads:最小活跃线程数
test.maxAT-Max active threads:最大活跃线程数
test.meanAT-Mean active threads:活跃线程数
test.startedT-Started threads:启动线程数
test.endedT-Finished threads:结束线程数

响应时间指标:

代码语言:javascript
代码运行次数:0
运行
复制
ok.count:采样器的成功响应数
h.count:每秒点击数
ok.min:采样器成功最短响应时间
ok.max:采样器成功最长响应时间
ok.avg:采样器成功平均响应时间
ok.pct:采样器成功响应百分比
ko.count:采样器失败响应数
ko.min:采样器失败的响应最短时间
ko.max:采样称失败最长响应时间
ko.avg:采样器失败平均响应时间
ko.pct:采样器失败响应百分比
a.count:采样器响应数(ok.count和ko.count的总和)
a.min:采样器最小响应时间(ok.count和ko.count的最小值)
a.max:采样器最大响应时间(ok.count和ko.count的最大值)
a.avg:采样器平均响应时间(ok.count和ko.count的平均值)
a.pct:采样器响应百分比(根据和失败样本的总数计算)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TestOps 微信公众号,前往查看

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

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

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