【前言】

今天记录一下Jmeter中JDBC Request和BeanShell PostProcessor的结合使用的方法(SQL模糊查询)

【步骤】

1.下载对应数据库的驱动包到jmeter安装目录的lib文件中,并导入到jmeter的测试计划中(楼主的数据库是Postgresql)

2.配置好JDBC Connection Configuration

Variable Name:定义变量名称,作用:说明哪个JDBC Request需要引用此配置 
Database Connection Configutration:输入要访问的数据库信息
  - Database URL:数据库连接的信息

    -详细介绍可以参考下这篇博客: https://blog.csdn.net/amoscn/article/details/74991924

  - JDBC Driver class:数据库的连接驱动名称 
  - Username:数据库的用户名 
  - Password:数据库的密码 

3.添加JDBC Request(需要执行的SQL语句)

Variable Name:输入需要引用的JDBC配置(当前输入的数值与JDBC Connection Configuration相同的名称),两者的变量名称是需要一致的 ,就代表引用哪一个数据库连接

Query Type:输入查询的类型(默认选择Select Statement)

 详细介绍可以参考下这篇博客:https://www.cnblogs.com/imyalost/p/6498029.html

Restult Variable name:将所查询的结果放到此结果集中(result)

4.从BeanShell PostProcessor中取出结果集

取出结果集中的数据:

columnValue = vars.getObject(“resultObject”).get(0).get(“Column Name”); 
  - vars.getObject(“resultObject”):代表从哪个结果集中取数据 
  - get(0):取第几行 
  - get(“ColumnName”):取哪一列(哪一列即为JDBCRequest查询结果中的字段名)

备注: 
1. columnValue = vars.getObject(“resultObject”).get(0).get(“Column Name”),返回的类型是Object类型。

2 需要将Object类型转换成String类型(取出对象的名称.toString())。 
例如:columnValueResule.toString()),其中columnValueResule是取出的对象名称

3 取出来的变量放到jmeter中,用此方法:vars.put(“key”,Value)。 
例如:vars.put(“xxxx”,DBclassname.toString());如果要引用此查询语句的结果,只需要引用key值就可以

5.使用JDBC Request进行模糊查询

引用BeanShell中值的固定格式为:${xxxx}

6.查询结果展示

Jmeter中JDBC Request和BeanShell PostProcessor的结合使用(SQL模糊查询)的更多相关文章

  1. Jmeter 中JDBC request 详解 !

    JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...

  2. Jmeter之JDBC Request使用方法(oracle)

    JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...

  3. 二、Jmeter 后置处理器(BeanShell PostProcessor)

    1.新建JDBC Request,如下图所示: 重要的参数说明: Variable Name:数据库连接池的名字,需要与JDBC Connection Configuration的Variable N ...

  4. jmeter 性能测试 JDBC Request (查询数据库获取数据库数据) 的使用

    JDBC Request 这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作.它经常需要和JDBC Connection Configuration配置原 ...

  5. 转jmeter 性能测试 JDBC Request (查询数据库获取数据库数据) 的使用

    JDBC Request 这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作.它经常需要和JDBC Connection Configuration配置原 ...

  6. jmeter的JDBC Request接口测试

    Jmeter操作Mysql 测试计划添加.jar包 mysql-connector-java-5.1.7-bin.jar用于使Jmeter可以读取Mysql: 线程组添加 JDBC Connectio ...

  7. Jmeter(十三) JDBC Request

    Jmeter中取样器(Sampler)是与服务器进行交互的单元.一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录响应时间信息 有时候工作中我们需要对数据库发起请求或者对数据 ...

  8. jmeter将JDBC Request查询出的数据作为下一个接口的参数

    现在有一个需求,从数据库tieba_info表查出rank小于某个值的username和count(*),然后把所有查出来的username和count(*)作为参数值,用于下一个接口. tieba_ ...

  9. Jmeter将JDBC Request查询结果作为下一个接口参数方法(转载)

    现在有一个需求,从数据库tieba_info表查出rank小于某个值的username和count(*),然后把所有查出来的username和count(*)作为参数值,用于下一个接口. tieba_ ...

随机推荐

  1. JAVA堆内存和栈内存初步了解

    一.堆内存和栈内存 程序运行时内存分配有三种:静态存储分配,栈式存储分配,堆式存储分配 1.静态存储分配: 在程序编译时就可以确定数据目标在运行时所需要的内存,因此在编译时就为其分配固定大小的内存. ...

  2. STL memory.cpp

    memory.cpp # // Filename: memory # # // Comment By: 凝霜 # // E-mail: mdl2009@vip.qq.com # // Blog: ht ...

  3. Cot

    题目大意 两种操作 给坐标上一个直角三角形中每个整点权值$+1$ 求坐标上一个直角三角形中每个整点权值之和 题解 一顿分析思考加推导之后,发现并不存在这样的数据结构(大概是有,只是我不知道),于是考虑 ...

  4. A唐纳德先生和假骰子(华师网络赛)

    Time limit per test: 1.0 seconds Memory limit: 256 megabytes 在进行某些桌游,例如 UNO 或者麻将的时候,常常会需要随机决定从谁开始.骰子 ...

  5. ACM学习历程——UVA 127 "Accordian" Patience(栈;模拟)

    Description  ``Accordian'' Patience  You are to simulate the playing of games of ``Accordian'' patie ...

  6. 【VS】VS开发中遇到的问题的总结

    1.  VS中经常会出现无法解析的外部符号,还有LINK ERROR 2019等 这类问题如果检查代码没有错误,很大概率就是lib文件错误.调试程序找出问题函数,再找出问题函数使用到的lib文件,在项 ...

  7. 【转】 Pro Android学习笔记(六九):HTTP服务(3):HTTP POST MultiPart

    目录(?)[-] 建立测试环境 开发环境导入第三方JAR HTTP Post Multipart小例子 HTTP POST不仅可以通过键值对传递参数,还可以携带更为复杂的参数,例如文件.HTTP Po ...

  8. pythoon_interview_redit

    easy/intermediate What are Python decorators and how would you use them?How would you setup many pro ...

  9. python 链表

    在C/C++中,通常采用“指针+结构体”来实现链表:而在Python中,则可以采用“引用+类”来实现链表. 节点类: class Node: def __init__(self, data): sel ...

  10. Python函数式编程(把函数作为参数传入)

    map:接受两个参数(函数,Iterable),map将传入的函数依次作用于Iterable的每个元素,并且返回新的Iterable def f(x): return x*x r = map(f,[1 ...