PostgreSQL从入门到精通教程 - 第47讲:JMETER工具使用

PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。

第47讲:JMETER工具使用

内容1:JMeter简介

内容2:JMeter测试部署

内容3:JMeter报告分析

JMETER介绍

Apache JMeter 是 Apache 组织基于 Java 开发的压力测试工具,用于对软件做压力测试。

JMeter 最初被设计用于 Web 应用测试,但后来扩展到了其他测试领域,可用于测试静态和动态资源,如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库和 FTP 服务器等等。JMeter 可对服务器、网络或对象模拟巨大的负载,在不同压力类别下测试它们的强度和分析整体性能。

另外,JMeter 能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证程序是否返回了期望结果。为了最大限度的灵活性,JMeter 允许使用正则表达式创建断言。

JMETER部署

1、jmeter安装包下载:

https://www.apache.org/dist/jmeter/binaries

解压到任意目录即可。注意:打开的时候会有两个窗 口,JMeter的命令窗口(jvm)和 JMeter的图形操作界面,不可以 关闭命令窗口,命令窗口可以输 出运行日志且关闭后jmeter操作页 面也会同时关闭。

2、配置环境变量:

1)新增加一个环境变量 JMETER_HOME , 变量值=F:\jmeter\apache-jmeter-5.2.1 2)修改classpath增加如下内容

%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib/logkit-2.0.jar;

3、同步安装jdk才能正常启动jmeter

版本jdk1.8以上,也要配置环境变量JAVA_HOME,变量值=当前jdk安装目录E:\jdk-11.0.13 本次用到的是jdk-11.0.13,解压就可以了,然后在环境变量添加JAVA_HOME,以及在PATH中添加JAVA的执行路径。

4、下载JDBC PostgresSQL 驱动包下载

https://jdbc.postgresql.org/download.html (postgresql-42.3.1.jar)

把驱动包放到JMETER安装路径的bin目录下。

JMETER配置

1、导入PG数据库驱动包

2、添加线程组:右击"TESTPLAN"-》Add

2、添加线程组:填写内容

3、添加JDBC配置 右键线程组-》Add-》ConfigElement-》JDBC Connection Configuratio

3、添加JDBC配置 (续) jdbc:postgresql://192.168.18.111:1922/tpch

4、测试连接性 右键线程组-》Add-》Sampler-》JDBC Request 提供了多种数据库的请求

4、测试连接性 (续)

5、为了看到测试的结果,添加监听器,添加一个图形结果,一个查看结果树,一个聚合报告:

6、测试连接:

7、查看结果树:

7、查看结果聚组统计报告:

7、添加正式测试用例(右键线程组-》Add-》Sampler-》JDBC Request)

8、修改并发用户数

9、清除以前的测试结果(结果树、聚组报告、图形结果)

10、执行测试

11、查看结果(结果树)

11、查看结果(聚组报告)

Label:就是请求名称

#Samples:总线程数,值 = 线程数 * 循环次数

Average:单个请求的平均响应时间,值 = 总运行时间 / 发送到服务器的总请求数,单位是毫秒

Median、90%line、95%line、99%line分别代表50%的用户响应时间、90%的用户响应时间、95%的用户响应时间、99%的用户响应时间,也就是有百分之多少的请求小于这个值。其中,90%line是性能测试中比较重要的一个衡量指标。

-->> 以上就是【PostgreSQL从小白到专家】第47讲 - JMETER工具使用 的内容,欢迎一起探讨交流,往期视频及文档,联系CUUG客服

相关推荐
GDAL27 分钟前
Node.js v22.5+ 官方 SQLite 模块全解析:从入门到实战
数据库·sqlite·node.js
DCTANT1 小时前
【原创】国产化适配-全量迁移MySQL数据到OpenGauss数据库
java·数据库·spring boot·mysql·opengauss
测试杂货铺2 小时前
Jmeter(六):json断言元件,jmeter参数化实现
jmeter·json
AI、少年郎4 小时前
Oracle 进阶语法实战:从多维分析到数据清洗的深度应用(第四课)
数据库·oracle
赤橙红的黄4 小时前
自定义线程池-实现任务0丢失的处理策略
数据库·spring
DataGear4 小时前
如何在DataGear 5.4.1 中快速制作SQL服务端分页的数据表格看板
javascript·数据库·sql·信息可视化·数据分析·echarts·数据可视化
weixin_438335404 小时前
分布式锁实现方式:基于Redis的分布式锁实现(Spring Boot + Redis)
数据库·redis·分布式
码不停蹄的玄黓4 小时前
MySQL Undo Log 深度解析:事务回滚与MVCC的核心功臣
数据库·mysql·undo log·回滚日志
Qdgr_5 小时前
价值实证:数字化转型标杆案例深度解析
大数据·数据库·人工智能
数据狐(DataFox)5 小时前
SQL参数化查询:防注入与计划缓存的双重优势
数据库·sql·缓存