大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

上节课爱画漫画的小哥哥教我们如何正确get参数传递和HTTP正确使用。尤其是在无UI下进行接口的访问。大家有get到吗?

看到很多小伙伴觉得看的不过瘾,在强烈的催促下,小哥哥的新文章又出来了。

JMeter的分析报告,不仅没有实时性、而且报告中的数据是测试时间段内的平均值,重点是长的很丑啊!做为一个颜值即正义的小仙女/小仙童,对于数据分析也会要求高颜值。

这次小哥哥会不会帮我们解决这个问题呢?接着往下看吧!

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

测试报告对比 

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

Grafana是一种度量分析与可视化图标展示工具,可以支持不同种类的数据源。读到这里你会发现,这个工具并不是jmeter内置工具,使用起来稍有些麻烦!


JMeter原生测试测试报告带来的“痛苦”

  • 不具备实时性

  • 报告中的数据是测试时间段内的平均值

  • 长相问题

Grafana工具的优点

  • 实时展示JMeter压测数据

  • 数据范围可选

  • 界面更友好

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

平台组

如果想使用Grafana,你需要以下几个工具:

  • JMeter:压测工具, 产生压测数据

  • InfluxDB: 开源时序数据库, 特别适合用于处理和分析资源监控数据,用于存储压测数据

  • Grafana:度量分析与可视化图标展示工具,可以支持不同种类的数据源,用于将存储于InfluxDB中的数据以图表的形式展示出来

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

 InfluxDB

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

部署方法:Docker 部署

事先准备:安装Docker,下载influxDB镜像:

docker pull influxdb

启动 influxDB 容器,将新 influxDB 容器命名为 jmeterdb, 执行docker创建命令:

docker run -d -p 8086:8086 -p 8083:8083 --name=jmeterdb influxdb

执行如下命令进入容器内部:

docker exec –it jmeterdb bash

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

接下来要在容器内部创建JMeter数据库,用于收集JMeter发送的压测数据:

  • 执行 influx命令进入命令台

  • 执行类sql语句 创建JMeter数据库:create database jmeter;

  • 创建完JMeter数据库之后执行如下命令验证数据库已经创建成功: show databases;

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

JMeter

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

在JMeter中添加 Backend Listener 组件,用于收集数据并发送给influxdb。

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

在Backend Listener implementation 中选择 InfluxdbBackendListenerClient (注意:必须使用jmeter 5.0以上版本,否则需要单独装插件才可以看到这个组件)

在influxdbURL中将实际的influxdb hostname填写进去,在application中填写 order,在testTitle中填写 Order Testing,其余配置保持不变

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

运行JMeter , 然后在 influxdb中检验是否已经能够接受到数据。在influxdb 命令台中使用查询语句,检查是否已经能够收到数据

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

 Grafana

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

部署方法:Docker 部署

下载镜像:
docker pull grafana/grafana

启动镜像:
docker run -d -p 3000:3000 --name=jmeterGraf grafana/grafana

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

访问 Grafana 的控制台链接,验证它已经运行正常。默认用户名/密码:admin / admin,登录之后请跳过修改密码

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

接下来,要在在Grafana中添加数据源

  • 选择 Add data source

  • 找到 InfluxDB

  • 单击选择该DB

大话JMeter3|如何借助工具搞定高颜值的性能监控报告


配置InfluxDB 数据源

  • 输入 URL :http://[hostname or IP]:8086

  • Access : browser

  • Database : jmeter

其余参数保持默认值

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

单击 Save & Test 按钮,确认返回消息提示正确确认信息

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

仪表盘是Grafana里面最重要的展示部分。仪表盘可以视为一组一个或多个面板组成的一个集合,来展示各种各样的面板,我为大家准备好了我的Dashboard,大家只需要导入即可使用。

在Grafana 内导入JMeter Dashboard,进入Home Dashboard 页面,选择Import

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

github地址:https://github.com/princeqjzh/iJmeter

打开 iJmeter项目中的 shell/ jmeter_dashboard.json 文件

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

将json文本复制 / 粘贴到 paste JSON 文本框中,单击Load按钮导入

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

在 DB name 中选择 InfluxDB,单击 Import 按钮完成 Dashboard 导入

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

打开刚刚导入的JMeter Dashboard 查看结果

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

打开JMeter,将线程数分别调整为 10, 20, 30;持续压测时间为1分钟

分别对系统施加压力测试,然后在 Grafana 面板中可以看到运行结果

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

写在最后

本文使用漫画形式向大家展示了JMeter的进阶用法:如何搭建InfluxDB,使用更炫酷的Grafana。同学们,不知道你们学会了吗?请同学们勤加练习,争取学到更多的知识。

本内容出自霍格沃兹测试学院。想进一步学习JMeter的使用?请继续关注我们。

- 今日互动 -

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

小编PS:接下来小伙伴想看什么样的内容呢?可以留言告诉我们哦!

今天我和画漫画的小哥哥打赌。

1.如果点“在看”的超过30个,我请小哥哥吃饭。

2.如果留言超过30条,小哥哥请我吃。

3.如果点“在看”和“留言”都超过30个,BOSS请我们吃大餐。

所以,为了让BOSS请吃饭,也为了小哥哥更有动力画漫画。你们会点“在看”和“留言”的,对吗?

                   

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

七夕中奖的小伙伴私聊小助手,问及中奖发放。由于小伙伴的二维码未能及时贴出来。所以未能打款成功。

在此通知大家,本次中奖的小伙伴,请于28日23:59分前将自己收款二维码贴在社区贴里,逾期将放弃领奖哈!

29日思寒将打款完成。请中奖的小伙伴不要忘记在社区里贴自己的收款二维码(一定是收款二维码哈!)。

中奖名单点击下面链接:
因为爱情|曾经让你感动的瞬间,让你看到了爱情的模样

社区贴链接:

https://testerhome.com/topics/20122

往期推荐

大话JMeter2|正确get参数传递和HTTP如何正确使用

大话jmeter,带你了解jmeter的基础用法

测试工程师的转型探索:如何让产品质量变得更好?

中高级测试开发名企定向培养,挑战 BAT 年薪 50W+ Offer!

你喜欢小哥哥这篇文吗?

喜观就点“在看”鼓励一下小哥哥大话JMeter3|如何借助工具搞定高颜值的性能监控报告

大话JMeter3|如何借助工具搞定高颜值的性能监控报告

戳“

阅读原文

”让你升职加薪吧!