JMeter系列(五):JMeter操作Mysql数据库

JMeter连接mysql数据库是很方便的,下面就演示一下具体的操作。
首先,在本地安装好mysql服务器,建立库和表,并准备数据以供测试使用。
JMeter系列(五):JMeter操作Mysql数据库
接下来,在【测试计划】中添加JDBC驱动,即下载mysql-connector-bin.jar并添加到classpath中。如下图所示:
JMeter系列(五):JMeter操作Mysql数据库
当然,如果将这个jar包直接放在JMeter安装目录的lib文件夹中,就无需在【测试计划】中添加了。
当上面的准备工作完成后,就可以在线程组下添加一个【配置元件】–【JDBC Connection Configuration】
JMeter系列(五):JMeter操作Mysql数据库
参数详解:

名称 描 述 必须
Name 脚本中显示的这个元件的描述性名称
Variable Name for created pool 连接所绑定的变量名。可以创建多个连接,每个连接绑定到不同的变量名,后续【JDBC Request】通过对应variable name使用相应的连接
Max Number of Connections 连接池最大允许连接数。默认设置为0,代表每个线程获得自己的连接池。如果使用共享连接池,将其设置成与线程数相同即可
Max Wait (ms) 超时时间。如果尝试连接的过程超过了这个时间,则抛出异常并停止连接
Time Between Eviction Runs (ms) 运行状态下,空闲对象回收线程休眠时间。如果设为负数,空闲对象回收线程将不会运行
Auto Commit 自动提交开关,true代表开启
Transaction isolation 事务隔离,一般使用默认即可
Test While Idle 当连接空闲时是否进行测试
Soft Min Evictable Idle Time(ms) 连接可以在池中处于空闲状态的最短时间,超过这个时间的空闲连接才会被回收
Validation Query 用于确定数据库是否仍在响应的简单查询
Database URL 数据库的JDBC连接串
Username 数据库连接的用户名
Password 数据库连接的密码

添加【JDBC Request】
JMeter系列(五):JMeter操作Mysql数据库
最终脚本结构完成,运行脚本,结果如下:
JMeter系列(五):JMeter操作Mysql数据库
再看Debug Sampler中:
JMeter系列(五):JMeter操作Mysql数据库
可以看到,sql查询结果存储在变量中,例如name的变量,name_#=3,表示sql语句name字段有3个结果,name_1、name_2、name_3,在脚本后续想使用这些值时用${variable name}引用,例如用${name_1}即可使用"Tom"这个值。