Jmeter之数据库连接及请求

涉及到的Jmeter模块如下:

JDBC Connection Configuration

JDBC PreProcessor / JDBC Request

Debug Sampler

View Results Tree

前言

做接口测试时,经常碰到需要从数据库中查取指定的值作为请求参数。或者请求结束后,如有结果写入数据库,需要查看数据库中指定的结果是否为期待值。此时就需要使用Jmeter对数据库进行一些操作:

1. 连接访问数据库

2. 使用sql语句查询出指定的结果

3. 对查询结果做进一步处理

连接数据库

1. 下载mysql数据库jar包,下载地址:https://dev.mysql.com/downloads/connector/j/
jia 建议放置到Jmeter路径lib文件夹下:...\apache-jmeter-4.0\lib

2. Jmeter Test Plan处导入下载好的mysql jar包

3. Test Plan下添加线程组,线程组下添加JDBC Connection Configuration
Jmeter之数据库连接及请求_第1张图片

4. .配置 JDBC Connection Configuration, 指定要连接的数据库。
 注意Variable Name for created pool处一定要指定一个名字,后续进行数据库请求时,通过此名字可以直接知道请求的是此处配置好的数据库

Jmeter之数据库连接及请求_第2张图片

请求数据库

5. 线程组添加JDBC Request, 或根据需求某个HTTP请求下添加JDBC PreProcessor(或JDBC PostProcessor)

Jmeter之数据库连接及请求_第3张图片

6. 配置数据库请求。主要是设置查询类型,查询语句,并指定查询结果存放到哪个变量中。

Jmeter之数据库连接及请求_第4张图片

注:

  • 使用多个sql语句时,JDBC Connection Configuration中的数据库URL末尾要追加参数?allowMultiQueries=true
  • Variable names保存sql返回的数据和总行数。
    示例中sql返回2行3列数据,设置变量名为handle_id,则以下变量会被设置:
    handle_id_#=2 (总行数)
    handle_id_1=第1列第1行
    handle_id_2=第1列第2行

7. 使用数据库中查询出的结果。使用${变量名}来访问指定的值。
如下图,HTTP Request中使用${handle_id_1}获取数据库中指定值(查询结果的第一列第一行,作为HTTP请求的参数)

Jmeter之数据库连接及请求_第5张图片

8. 通过添加Debug Sampler,可以查看数据库连接的具体情况及各变量值。

Jmeter之数据库连接及请求_第6张图片

你可能感兴趣的:(Jmeter,性能测试,接口测试)