首页 > 技术文章 > 【Jmeter学习】jmeter获取JDBC响应做接口关联

gtea 2020-08-19 14:57 原文

基础操作

JDBC请求,最核心的是两个jar包:

mysql驱动-mysql-connector-java-5.1.13-bin.jar

sqljdbc4.jar

https://mvnrepository.com/artifact/mysql/mysql-connector-java

https://mvnrepository.com/artifact/com.microsoft.sqlserver/sqljdbc4/4.0

将这两个jar包放到Jmeter目录中的lib文件下,然后重启Jmeter

添加线程组

添加 JDBC Connection Configuration

JDBC Connection Configuration 基本配置

Variable Name:
数据库连接池的名称,因为一个测试计划可以有多个 JDBC Connection Configuration,每
个可以取不同的名称。在 jdbc request 中通过这个名称选择合适的连接池进行使用。
(注意Variable Name命名必须和之后JDBC Request中的Variable Name 命名一致)
Max Number of Connections:最大连接数;如果做性能时,建议填 0;如果默认为 10,表示最大只能连接 10 个线程;
Max Wait(ms):最大等待时间,单位毫秒;
Time Between Eviction Runs(ms):有空闲的线程数,释放不使用的线程;
Auto Commit:自动提交,默认为 true,如修改数据库时,自动 commit;
Database URL:jdbc:mysql://${host}:${port}/dbname?allowMultiQueries=true(允许执行多条sql)
JDBC Driver class:com.mysql.jdbc.Driver
Username:数据库用户名
Password:数据库密码

添加 JDBC request

这个 Sampler 可以通过 sql 语句向数据库发送一个 jdbc 请求,并对获取返回的数据进行操作。它需要和 JDBC Connection Configuration一起使用

Variable Name:数据库连接池的名字,需要与 JDBC Connection Configuration 的 Variable 保持一致

Query :填写 sql 语句,下拉可以选择不同类型的sql

Query type:表示sql类型。select表示查询,update表示更新。不同的sql类型需要指定不同的type

Parameter valus:参数值

Variable names:保存 sql 语句返回结果的变量名

Result variable name:创建一个对象变量,保存所有返回的结果

Query timeout:查询超时时间

Handle result set:定义如何处理由 callable statements 语句返回的结果

执行线程,查看结果

jdbc请求的sql中可以传入变量,同时也可把变量传出来供后续接口调用!

我们从sql表中将需要的id变成变量

执行线程,查看结果

到这里JDBC的响应结果关联就完成了,

推荐阅读