Jmeter数据库连接(MYSQL)

目标:Jmeter连接数据库,辅助接口自动化测试

1.添加JDBC驱动;
2.连接数据库;
3.查询需要的字段数据

添加JDBC驱动:

JDBC驱动 官网下载地址:https://dev.mysql.com/downloads/file/?id=477058
下载入口
将压缩包中的mysql-connector-java-8.0.11.jar 添加到jmeter安装目录的lib/ext文件下,重启jmeter,即可生效。
位置

连接数据库:

1.Jmeter添加JDBC Connection Configuration
路径:测试计划右键添加配置元件-JDBC Connection Configuration
JDBC配置信息
variable name for created pool= 库名,需要与database url中的库名保持一致,否则会出错;
Database URL,格式为:jdbc:mysql://ip:端口号/库名?serverTimezone=UTC&characterEncoding=utf-8
JDBC Driver class : com.mysql.jdbc.Driver;
validation Query: select 1

输入数据库登录的用户名和密码,即可以连接数据库了。
不同数据库对应的配置情况:

DatabaseDriver classDatebase URLvalidation Query
MySQLcom.mysql.jdbc.Driverjdbc:mysql://host:port/{dbname}select 1
PostgreSQLorg.postgresql.Driverjdbc:postgresql:{dbname}select 1
Oracleoracle.jdbc.driver.OracleDriverjdbc:oracle:thin:user/pass@//host:port/serviceselect 1 from dual
Ingres (2006)ingres.jdbc.IngresDriverjdbc:ingres://host:port/db[;attr=value]select 1
MSSQL①com.microsoft.sqlserver.jdbc.SQLServerDriver
②net.sourceforge.jtds.jdbc.Driver
①jdbc:sqlserver://host:port;databaseName=DBname
②jdbc:jtds:sqlserver://host:port/"+“library”
select 1
DB2com.ibm.db2.jcc.DB2Driverjdbc:db2://host:port/{dbname}select 1 from sysibm.sysdummy1

查询需要的字段:

1.线程组右键添加-取样器-JDBC request
示例
variable name of pool:需要连接的数据库名,与JDBC Connection Configuration保持一致;
Query Type:Jmeter5.4.1共有8种不同的类型,以下为区分的条件:

Query Type区别
Select Statement仅支持select语句,一次只能执行一条
Update Statement支持非select语句,并且支持执行多条语句。若其中有select语句,会自动忽略;若第一条是select语句,报错
Callable Statement只要语法正确,可以执行多条任意语句
Prepared select statement用于绑定变量重用执行计划,对于多次执行的SQL语句,Prepared statement无疑是最好的类型
Prepared update statement参考Prepared select statement
Commit将未存储的SQL语句结果写入数据库表
Rollback撤销指定SQL语句的过程
AutoCommit(false)将用户操作一直处于某个事务中,直到执行一条commit提交或rollback语句才会结束当前事务重新开始一个新的事务

Variable names:用逗号分隔的变量名列表,用于保存由Select语句、Prepared Select语句或CallableStatement返回的值。

查询结果


示例:

比较复杂的审批流程,可以通过数据库查询订单的当前审核人id及对应的username,获取对应的token,再调用审核接口完成整个审核过程。


常见问题及解决:

1.报错:java.sql.SQLException: Cannot create PoolableConnectionFactory (Access denied for user ‘root’@‘172.16.24.30’ (using password: YES))
解决:检查密码是否填写错误;

2.报错:Cannot create PoolableConnectionFactory (Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.)
解决:JDBC驱动版本有问题,更换与安装的jmeter匹配的版本

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在JMeter连接MySQL数据库,你需要按照以下步骤操作: 1. 首先,确保你已经安装了JMeter。如果没有,请先下载和安装JMeter。 2. 下载MySQL的JDBC驱动程序(也称为Connector/J)。你可以从MySQL官方网站下载最新版本的驱动程序。 3. 将下载的JDBC驱动程序(一个.jar文件)复制到JMeter的lib目录下。这个目录位于你安装JMeter的根目录下。 4. 启动JMeter,并创建一个新的测试计划。 5. 在测试计划中,右键点击"测试计划",选择"添加" -> "线程组"来添加一个线程组。 6. 在线程组上右键点击,选择"添加" -> "Sampler" -> "JDBC请求"来添加一个JDBC请求。 7. 在JDBC请求中,配置数据库连接信息。填写以下字段: - 变量名:定义一个变量名,用于引用这个连接。 - JDBC驱动类:选择"com.mysql.jdbc.Driver"。 - JDBC URL:输入连接MySQL数据库的URL,例如:jdbc:mysql://localhost:3306/mydatabase。 - 用户名和密码:输入你的MySQL数据库的用户名和密码。 8. 在"高级设置"中,可以设置一些额外的数据库连接参数,例如超时时间、编码等。 9. 在JDBC请求下方添加需要执行的SQL查询语句。 10. 运行你的测试计划,JMeter连接MySQL数据库并执行你设置的SQL语句。 这样,你就可以在JMeter连接MySQL数据库并执行SQL查询了。请注意,确保你的测试计划中已经包含了JDBC驱动程序的正确配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值