当前位置: 首页 > article >正文

jmeter连接mysql数据库以及常规用法

1、在jmeter中新建一个测试计划,在测试计划界面中点击浏览,选择连接mysql数据库的jar包

      如果没有jar包可以去网上下载,也可以通过如下链接进行下载
链接: https://pan.baidu.com/s/1BI6f19KSzXGlkSOwbnequw 提取码: gn8e

2、然后创建线程组,并且要知道所需要连接数据库的主机ip以及端口,用户名和密码等信息;点击测试计划右击-配置元件-JDBC Connection Configuration 组件,该组件通常加到线程组前面该组件用于连接数据配置

3、配置JDBC Connection Configuration 组件,在该组件中输入字段信息

Variable Name for created pool:数据库的链接名,自己定义一个后面可以通过该名称引用,我这边输入为mysqlT

Max Number of Connections:最大用户链接数量,用于定义并发时最大的链接mysql的用户数,我还准备设置为10

Max Wait (ms):最大连接等待时间,我这边设置为10000

Time Between Eviction Runs (ms):运行间隔时间,我这边设置为60000

Auto Commit::自动提交,设置为True

Transaction lsolation:交易隔离,使用默认的,DEFAULT

Test While ldle:使用默认的值,True

Soft Min Evictable ldle Time(ms):使用默认值,5000

Validation Query:验证查询,选择select1,表示检查select语法

Database URL:数据库连接url,jdbc:mysql://localhost:3306/数据库名,如果数据库不在本机则需要将localhost换为mysql数据库所在的服务器的ip地址,3306是数据库的默认ip.如果有变化也要修改,数据库名则是需要查询表所在的数据库名称,我这边输入 jdbc:mysql://192.177.0.11:3306/test

JDBC Driver class:JDBC Driver类:选择或者直接输入com.mysql.jdbc.Driver

Username:数据库的登陆名,我这边为root

Password:数据库的密码,根据自己设置的进行填写。

        注意:如果当编写的sql语句需要条件查询,且字段有中文时,需要在Database URL字段信息的后面再加一段编码设置,不然查询的时候返回的结果为空。查询不到数据

?useUnicode=true&characterEncoding=utf8
jdbc:mysql://192.177.0.11:3306/test?useUnicode=true&characterEncoding=utf8

4、将JDBC Connection Configuration 组件所有字段信息输入完成后在线程组中添加JDBC Request组件,点击线程组右击-添加-取样器-JDBC Request,该组件用于编写sql语句,对连接的数据库进行查询

5、配置JDBC Request组件,如果只是简单的查询只需要输入以下字段即可

Variable Name of Pool declared in JDBC Connection Configuration:JDBC连接配置中声明的池变量名称,输入在JDBC Connection Configuration 组件中定义的链接名称,当时名称为mysqlT,这里也输入同样的。

Query Type:查询类型,sql语句类型,我这边写的是查询,就选择Select Statement

sql语句编辑框:编辑框中输入查询sql,select * from lr_user   lr_user为需要查询的表名

Parameter types:参数类型,这个要看连接数据库中字段的类型,我这边一共两个字段,都是varchar类型,因为输入varchar,varchar 用英文逗号隔开。必填,且与参数值个数要一致

6、JDBC Request组件配置完成后,点击添加结果数,点击运行,可以在结果树中查看到查询到的数据

在结果树可以看到查询结果,就表示连接mysql数据成功了,下面就进行连接后一些常规用法的介绍。

7、如果对mysql数据库有其他更多的操作就需要了解JDBC Request组件其它字段的使用。例如当需要进行预编译查询时,即需要编写条件查询时,需要对字段做如下修改:

Query Type:查询类型需要选择 Prepared Select Statement

sql语句编辑框:中输入 select * from lr_user where yhm=? and mm=?     ?代表查询字段信息,该信息需要在Parameter values字段中进行填写

Parameter values:参数值,如果进行条件查询,在sql语句编辑框中有几个参数则就需要填写几个,通过英文逗号隔开,如图我这边将yhm和mm设置为查询条件,则就需要输入

亳州工业学校,123456  该两个参数将会被查询语句中的?进行调用。

Parameter types:有几个参数值,则就需要填写几个该参数值的类型,我这边都是varchar,所以就填写varchar,varchar   中间用英文逗号隔开

运行后结果树的查询返回如下图所示

8、当如果想要获取查询结果中的每一行的数据则可以通过调用参数变量的方式进行设置,继续设置JDBC Request组件字段,进行如下设置

Variable names:该字段为查询到的数据赋予变量。我这边查询到有三个字段,因此需要赋予三个变量值,后面可通过${}进行引用。

9、在JDBC Request后面添加一个BeanShell 取样器;线程组右击-添加-取样器-BeanShell 取样器

10、配置BeanShell 取样器,通过${yhm}${mm}${bz}来调用查询的字段进行输出

yhm、mm、bz,通过JDBC Request组件Variable names字段进行设置的。

${yhm_1} 代表查询到数据的第一行,${yhm_2} 代表查询到数据的第二行

${yhm_1} 代表查询到数据的第一行,${yhm_2} 代表查询到数据的第二行
"${yhm_1}\t${mm_1}\t${bz_1}\n${yhm_2}\t${mm_2}\t${bz_2}"

运行后的响应结果如下

11、步骤10是通过将结果存放在变量中并引用变量进行输出,也可以将结果存放到结果集中,通过调用结果集进行输出。JDBC Request组件字段配置如下

保持其它字段信息不变,输入Result variable name:字段信息

Result variable name:结果集名称,后续可通过调用结果集进行输出,我这边设置为rs

12、在配置BeanShell 取样器中进行配置,将结果集中的数据进行输出

在代码编辑区域中输入 vars.getObject("rs").get(0).get("yhm");

vars.getObject("rs") 表示获取rs结果集, rs是在JDBC Request组件Result variable name字段中配置的结果集名称。

.get(0):是指提取rs结果集中第一行

.get(0).get("yhm"):是指提取rs结果集中第一行中变量为yhm的数据。

查看运行结果,获取查询结果中的第一行中变量为bz的数据,

至此,jmeter中连接mysql数据以及常规用法就配置完成了。


http://www.kler.cn/a/283356.html

相关文章:

  • Database Advantages (数据库系统的优点)
  • Redo与Undo的区别:数据库事务的恢复与撤销机制
  • Ubuntu 的 ROS 操作系统安装与测试
  • 基于Python的网上银行综合管理系统
  • ubuntu连接orangepi-zero-2w桌面的几种方法
  • golang如何实现sse
  • node环境安装、vue-cli搭建过程、element-UI搭建使用过程
  • 生产监控系统与生产控制系统区别
  • 【实践经验】端口被占用问题:listen tcp:bind:only one usage of each socket address
  • 文心智能体-梦想目标实现助手-实现你的老板梦
  • Golang小项目(1)
  • asp.net core在win上的发布和部署
  • 命令模式与事件驱动编程:如何将两者结合以优化系统设计
  • 卸载重装redis
  • Python新手:学习 itertools.takewhile 迭代右过滤
  • 如何使用 Go 语言开发微服务
  • MIT 6.5840(6.824) Lab 4:Fault-tolerant Key/Value Service 设计实现
  • 可达性分析算法是什么?用于什么场景?解决什么问题?
  • 淘宝API接口解析: item_fee获取淘宝商品运费接口
  • 钉钉打包以后发送报错 org.apache.tomcat.util.codec.binary.Base64.encodeBase64([B 解决描述
  • Spring Security配置详细
  • 力扣: 环形链表
  • NFT Insider #144:Sandbox 投资 9 万美元助力区块链活动
  • LABVIEW数据保存文件
  • MVC与设计模式理解-lnmp学习之路
  • linux配置jenkins环境