• 不写一行代码,基于Jmeter打造性能测试数据平台



    每天进步一点点,关注我们哦,每天分享测试技术文章

    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:magetest

    码同学抖音号:小码哥聊软件测试


    01前 言

    服务端性能测试工具中,Jmeter毫无疑问是其中的王者,拥有开源、轻便、灵活、学习成本低等等很多优点。

    但是在压测过程中,也有很多不便之处,最不方便的地方,就是执行压测过程中,没有实时展示的图表。虽然也有一些插件能实现这个效果,但是这些插件都是基于GUI界面的,而真正压测的时候,都是在Linux环境中的,这些插件根本排不上用场。况且,即便使用了插件,也不能实现历史数据追溯,数据持久化保存等功能。



    02基于Jmeter的解决方案平台

    今天我们来学习一种Jmeter实时性能数据展示的解决方案平台,它既能实时的、直观的展示tps、响应时间等指标,还能永久存储数据,根据日期搜索查找历史数据。

    先来说下这套解决方案的原理,在Jmeter运行过程中,将产生的性能数据写入到数据库里,然后定时从数据库中读取性能数据,并分类展示到页面上。

    在这套解决方案中,数据库选择是influxdb,influxdb是一个开源的时序数据库,适合存储一些跟时间有关系的数据。而Jmeter提供了将性能数据写入到influxdb的组件。

    图表展示功能使用的是grafana,grafana是一款用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计,不需要写一行前端代码,只需要简单的配置,就成开发出一个漂亮的图表监控报表页面。

    平台架构如下:



    03部 署 流 程


    一.安装influxdb

    • 上传influxdb-1.7.9.x86_64.rpm到Linux下任意目录

    • 执行命令安装

      yum localinstall -y influxdb-1.7.9.x86_64.rpm

      修改配置

      vi /etc/influxdb/influxdb.conf

      [[graphite]]

      enabled = true

      database = "jmeter"

      bind-address = ":2003"

    • 启动influxdb

      systemctl start influxdb

    • 通过客户端进入到influxdb中,执行命令:influx

    • 创建库:create database jmeter;

    二、 安装grafana

    • 上传grafana-6.5.2-1.x86_64.rpm到任意目录下

    • 执行命令安装:yum localinstall -y grafana-6.5.2-1.x86_64.rpm

    • 启动grafana:systemctl start grafana-server

    • 在浏览器中访问grafana:http://{ip}:3000

    免费领取码同学软件测试课程笔记+超多学习资料+完整视频+面试题,可加微信:magetest

    三、 配置Jmeter

    • 编写好Jmeter脚本

    • 在测试计划下添加“监听器-后端监听器”

    • 配置后端监听器

      graphiteHost:influxdb的ip

      summaryOnly:false

      samplersList:.+(可以加过滤条件,如post.+)

      useRegexpForSamplersList:true

      其他选项保持默认

    • 执行一次Jmeter脚本

    • 进入到influxdb中,查看是否有指标数据:

      use jmeter;

    • show measurements;

    四、 配置grafana

    1、 登录http://{ip}:3000,用户名/密码:admin/admin

    2、 添加数据源

    3、 选择influxdb,进行以下配置

    4、 save & test

    5、 创建dashboard

     

     

     

     

    6、 依次类推,创建各接口响应时间图表

    7、 grafana中监听jmeter各指标解释

    http://jmeter.apache.org/usermanual/realtime-results.html

    五.命令行运行Jmeter,在grafana中就能看到相关的性能指标曲线图了

     

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频 ☞ 可加:magetest/关注码同学公众号:自动化软件测试

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    【命令】set命令
    【命令】ln命令
    【命令】htop命令
    【命令】top命令
    【命令】ps命令
    【命令】kill命令
    【命令】pstree命令
    【进程/作业管理】篇章一:Linux进程及其管理(进程管理类工具)----pstree、ps、top、htop、kill、(killall、pkill、pgrep、pidof)
    【进程/作业管理】篇章四:Linux任务计划、周期性任务执行
    【进程/作业管理】篇章二:Linux系统作业控制(jobs)
  • 原文地址:https://www.cnblogs.com/testfan2019/p/16718003.html
Copyright © 2020-2023  润新知