首页 > 数据库 >JMeter 数据库连接及查询、应用

JMeter 数据库连接及查询、应用

时间:2023-03-24 14:33:56浏览次数:34  
标签:红框 变量 数据库 userID 查询 添加 JMeter

 

本文主要是关于数据库连接、数据库查询、使用查询结果进行传参。

数据库连接

1、需要下载的插件:

      Mysql:mysql-connector-java-5.1.49-bin.jar

      百度网盘:https://pan.baidu.com/s/18KhiK1LnoTMf2dJqjTj15A    7nsg

      Oracle:ojdbc6-1.0.jar

      百度网盘:https://pan.baidu.com/s/1QNsyvFNHQnkBjIbVD1586g    h4k0

      下载完毕后,把jar包放到D:\Jmeter\apache-jmeter-5.2.1\lib,即JMeter的lib目录下,重启JMeter就可以了。

2、数据库连接配置

      添加路径:选择某个筛选器,右键--Add--Config Element--JDBC Connection Configuration

     下图中红框中是需要注意的地方:

  • Variable Name for created pool:配置一个变量名称,后面进行JDBC Request时,需要用到这个变量;
  • Vaildation Query:选择一种查询模式,一般按照红框选择就可以;

      Database URL:

  • Mysql:jdbc:mysql://IP:端口号/数据库名称。其中:如果想要支持多个查询语句,?allowMultiQueries=true;建议加上?useSSL=false ,因为 MySQL 5.5.45+, 5.6.26+ and 5.7.6+ 要求进行 SSL connectionl时,要有身份验证,这样可以去掉这个验证,当然还有数据库服务器的配置。存在多个参数时,用&连接;
  • Oracle:jdbc:oracle:thin:@IP:端口号:sid

       

      

 3、发起JDBC请求

      Mysql和Oracle一样。

      添加路径:选择某个线程组,右键--Sampler--JDBC Request

      注意事项:

  • 第一个红框内:数据库变量名称,必须和数据库配置中的数据库变量名称一致;
  • 第二个红框:查询方式。可以根据实际需要进行选择,一般可以默认:Select Statement,select * from 表A;如果查询条件是通过其他变量传入时,需要选择Prepared Select Statement,select * from 表A   where vccolumn1='${bizID}',记得用把变量放到引号中,千万不要在查询语句最后添加分号,否则会报错误;
  • 第三个红框:变量名称,把查询结果保存到这个变量中,方便后续使用。

 

4、利用数据库的查询结果进行传参

     例:变量名称为userID,在使用时,需要${userID_index},userID_0=查询结果的总数量,userID_1为查询结果的第一个数值,依次类推。可以添加一个Debug PostProcessor 进行查看;若查询语句的查询结果为两个字段,select a,  b from 表A,则需要在此添加两个变量名称,引用方法和一个变量一样,不确定的话,可以添加Debug PostProcessor进行查看。

5、如何实现从数据库获取数据并依次作为变量传给下个接口

       方法1:通过ForEach Controller实现

  • 首先查询出需要的数据,并且保存到变量中;
  • 通过JDBC Request 查询数据的数量,并保存到变量count中;
  • 添加ForEach Controller,配置如下:

          Input variable prefix : 输入变量的前缀;

          Start index for loop: 变量循环启动的索引,第一个元素起始索引+1;

          End index for loop: 变量循环结束的索引,此处可以填写${count}

          Output variable name : 输出的变量名称,用于替换循环下的请求的变量

         

  • 后续接口引用时,变量名称为${Output variable name};

      

      方法2:通过添加逻辑控制器Loop Controller,计数器实现

       

     

      进行传参需要用到函数_V,在函数助手可以看到;

  • ${index}:这里n为计数器得出的值,从1到${count_1}
  • _V函数: 若${__V(userID_${n})}中${n}=2, 则${__V(userID_2)}返回userID_2的值

      

 

标签:红框,变量,数据库,userID,查询,添加,JMeter
From: https://www.cnblogs.com/xiaobingdiaoyu/p/12925301.html

相关文章

  • Jmeter Aggregate report(聚合报告)
     本文主要介绍了聚合报告的一些参数信息。Jmeter的Aggregatereport(聚合报告)比较重要的参数报告的保存文件格式为jtl。timestamp:请求发出的绝对时间elapsed:响应时间......
  • JMeter Assertion
     ResponseAssertion (响应断言)用于判断接口请求的响应结果是否符合预期的一种断言方式。 Applyto:MainSamplesandSubSamples: JMeterwillcheckforthe......
  • 亚信安慧携AntDB数据库入选信通院软件供应链厂商和产品名录
    日前,中国信息通讯研究院(简称:中国信通院)在其主办的3SCON软件供应链安全大会上,发布了软件供应链厂商和产品名录。中国信通院云计算与大数据研究所副所长栗蔚表示,我国软件供应......
  • 亚信科技通信、交通行业数据库项目入选“星河”标杆、优秀案例
    近日,由中国信息通信研究院、中国通信标准化协会大数据技术标准推进委员会(CCSATC601)共同组织的第六届大数据“星河”案例评选结果公示,亚信科技及旗下亚信安慧支持完成的中国......
  • AntDB数据库助力中国移动结算中心建设
    为响应中国移动集团公司IT集中化的要求:全面落实“十三五”十大战略工程,加快“推动公司IT资源一体化整合“重点专项工作。以IT系统为载体,构建高效运营支撑体系,形成集中化支撑......
  • oracle数据库表索引空间不够
    oracle数据库表索引空间不够步骤1:检查索引空间使用情况首先,需要检查数据库的索引空间使用情况,以确定是否存在空间不足的问题。可以使用以下SQL语句查询当前索引空间的使......
  • Linux下Mysql数据库的基本使用
    (Linux下Mysql数据库的基本使用)一、Mysql的delete删除语法1.删除数据库①使用drop删除mysql>mysql>showdatabases;+--------------------+|Database......
  • Laravel 中 scope 查询作用域
    阅读目录一、查询作用域1.1全局作用域1编写全局作用域2匿名全局作用域3取消全局作用域1.2本地作用域1编写本地作用域2动态作用域二、应用示例三、简单演示理解示例一......
  • SQL数据库丢失恢复 SQL数据库误删除恢复工具 SQL数据库覆盖恢复工具
    SQL数据库文件丢失,误删除,数据库所在分区误格式化 数据库误还原覆盖等情况极佳数据库开发出数据库碎片恢复软件。可以从磁盘和分区恢复丢失的数据库文件市面上常规恢复软......
  • 查询自动表信息收集的情况
    --1、查看自动收集任务及状态。状态为disabled代表未启用默认策略,反之enabled为启用。selectclient_name,statusfromDba_Autotask_Clientwhereclient_name='a......