赞
踩
“后端监听器”(Backend Listener)是一种高级功能,用于异步地将测试结果数据发送至外部系统,如数据库、消息队列或时间序列数据库等,以便于长期存储、实时分析和可视化展示。
● 性能考量:选择合适的后端存储和处理系统,确保它们能应对高并发数据写入,不影响测试数据的完整性。
● 资源监控:在进行大规模测试时,监控后端系统的资源使用情况,防止数据丢失或处理延迟。
● 测试计划同步:在分布式测试环境下,确保所有JMeter实例的后端监听器配置一致。
● 安全性:加密传输数据,特别是在公网上传输敏感信息时,确保数据的安全性。
首先我们使用SpringBoot框架编写一段测试代码接口
//html @GetMapping(value = "/html",produces = "application/html") public String Returnhtml() { return "<!DOCTYPE html>\n" + "<html lang=\"en\">\n" + "<head>\n" + " <meta charset=\"UTF-8\">\n" + " <title>简单表单提交界面</title>\n" + "</head>\n" + "<body>\n" + " <h1>欢迎来到我们的简易表单</h1>\n" + " <form action=\"/submit_form\" method=\"post\">\n" + " <label for=\"name\">姓名:</label>\n" + " <input type=\"text\" id=\"name\" name=\"name\"><br><br>\n" + " <label for=\"email\">电子邮件:</label>\n" + " <input type=\"email\" id=\"email\" name=\"email\"><br><br>\n" + " <label for=\"message\">消息:</label>\n" + " <textarea id=\"message\" name=\"message\"></textarea><br><br>\n" + " <input type=\"submit\" value=\"提交\">\n" + " </form>\n" + "</body>\n" + "</html>"; }
我们编写如下脚本:
线程组:保持默认
HTTP信息头管理器:名称设置为accept,值为application/html
HTTP请求:协议设置为http,服务器名称或IP设置为127.0.0.1,端口设置为8091,方法设置为GET,路径设置为/html,内容编码为utf-8
这里要着重说明下,我们使用的JMeter是5.1.1作为测试版本,所以我们配套的influxdb数据库为InfluxDB shell version: 1.8.4
后端监听器:
● 后端监听器:选择influxdb
● influxdbMetricsSender:设置org.apache.jmeter.visualizers.backend.influxdb.HttpMetricsSender
● influxdbUrl:选择http://XX.XXX.XXX.XXX:8086/write?db=jmeter,上述db为数据库名称
● application:设置为test
● measurement:设置为jmeter,这里可以理解为jmeter写入的influxdb表
● summaryOnly:根据实际情况填写,当前保持默认
● samplersRegex:保持默认
● percentiles:保持默认
● testTitle:根据实际情况设置,保持默认为Test name
● eventTags:根据实际情况设置,当前保持默认
运行脚本后,我们登录对应的服务器上查看influxdb上是否真的写入数据库
第一步:登录influxdb
[root@localhost ~]# influx
Connected to http://localhost:8086 version 1.8.4
InfluxDB shell version: 1.8.4
第二步:查看当前数据库实例,找到自己要的实例
> show DATABASES
name: databases
name
----
_internal
prometheus
jmeter
losscount
第三步:进入数据库实例
> use jmeter
Using database jmeter
第四步:查看当前实例下的数据库表
> SHOW MEASUREMENTS
name: measurements
name
----
events
jmeter
第五步:查看表下的数据内容
> select * from jmeter order by time desc limit 5
name: jmeter
time application avg count countError endedT hit max maxAT meanAT min minAT pct90.0 pct95.0 pct99.0 rb responseCode responseMessage sb startedT statut transaction
---- ----------- --- ----- ---------- ------ --- --- ----- ------ --- ----- ------- ------- ------- -- ------------ --------------- -- -------- ------ -----------
1721801588352000000 test 1022 1 0 1 1022 1022 1022 1022 1022 782 154 all all
1721801588352000000 test 1 1 1 1 1 internal
1721801586885000000 test 1 0 0 0 1 internal
JMeter的后端监听器为性能测试提供了强大的数据收集和分析能力,是进行大规模、复杂测试不可或缺的工具。通过合理的配置和使用,可以有效地管理和优化应用的性能测试流程,为软件的性能优化和监控提供坚实的基础。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。