Jmeter连接数据库以及操作

连接数据库工具(mysql,sqlserver)
第一步
查看数据库版本,下载数据库驱动,并解压至任意位置(以mysql为例)Jmeter连接数据库以及操作_第1张图片

第二步
载入下载mysql驱动
测试计划>浏览>打开驱动路径>选择驱动
Jmeter连接数据库以及操作_第2张图片

第三步
连接数据库
依次输入数据库配置信息
Jmeter连接数据库以及操作_第3张图片

第四步
输入sql查询语句
线程组<取样器 Jmeter连接数据库以及操作_第4张图片

第五步
提取查询数据
1,循环控制器2,计数器3,配置提取函数
Jmeter连接数据库以及操作_第5张图片
Jmeter连接数据库以及操作_第6张图片
Jmeter连接数据库以及操作_第7张图片
Jmeter连接数据库以及操作_第8张图片
Jmeter连接数据库以及操作_第9张图片

第六步
创建结果树查看使用函数是否成功

Jmeter连接数据库以及操作_第10张图片
Jmeter连接数据库以及操作_第11张图片
5、亲测踩坑日记

1.1 添加jar包版本过高,jmeter版本是4.0,jar包版本:mysql-connector-java-8.0.19
察看结果树报错:Cannot create PoolableConnectionFactory (CLIENT_PLUGIN_AUTH is required)
解决方法:把jar版本换成:mysql-connector-java-5.1.48,然后重启jmeter

1.2报: Response message: java.lang.IllegalArgumentException: Variable Name must not be null in JDBC Request
此问题是JDBC Request里面的Variable Name为空造成的,一定要记住,这JDBC Connection Configuration、JDBC Request,两个元件里面的Variable Name一定不能为空,而且必须相同才能唯一连接一个数据库。

1.3 报 :Response message: java.sql.SQLException: Cannot load JDBC driver class ‘com.mysql.jdbc.Driver’

缺少mysql jdbc驱动包。在测试计划中导入jar包或者把jar放在jmeter安装路径lib下,然后重启,一定要重启!!!

6、Jmeter 完成单个 insert操作

前面操作与查询一样,但是在JDBC Request中SQL Query类型选择要选择 Update Statement,插入语句即可,然后察看结果树

备注:选择 Update Statement插入多行也只会运行第一行
Jmeter连接数据库以及操作_第12张图片

注意:如果有些值给的是自增长的值或者是默认值,可以不用填写,让其自动填充
1
7、Jmeter完成数据库的多个insert操作
前面操作与查询一样,但是在JDBC Request中SQL Query类型选择要选择 Prepared Update Statement,插入多行语句,特别注意的是多个插入语句要在连接配置里添加一个参数,参数为:?allowMultiQueries=true ,然后察看结果树

备注:?allowMultiQueries=true 是允许多行添加 ,false是不允许多行添加
Jmeter连接数据库以及操作_第13张图片

连接配置里添加参数 ?allowMultiQueries=true
Jmeter连接数据库以及操作_第14张图片

8、Jmeter 完成数据库的insert操作的参数化
前面操作与查询一样,在JDBC Request中SQL Query类型选择 Update Statement,因为是参数化设置,插入一行语句,特别注意参数化插入语句也要在连接配置里添加一个参数,参数为:?allowMultiQueries=true ,然后察看结果树
举个例子:
一张表里面有用户名,电话号码,密码三个字段,现在要把电话号码和用户名做参数化处理
电话号码和用户名随机呢可以用函数助手随机生成
1.1 选项—函数助手对话框—选择randomString—选择生成长度—生成数据
Jmeter连接数据库以及操作_第15张图片

把生成的随机数据放在sql中,参数化处理
Jmeter连接数据库以及操作_第16张图片

察看结果树
Jmeter连接数据库以及操作_第17张图片

,注意:也可以利用CSV这个元件去做语句的参数化

9、戳:jmeter批量造测试数据

10、思考点:如果有些字段存入数据库是加密的怎么办,比如此处的密码
两种解决方案:
1、密码都指定为加密后的数据字符串

2、利用beanshell来解决这个难题
戳:jmeter结合Beanshell生成加密数据
————————————————
版权声明:本文为CSDN博主「我是海浪呀」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37908248/article/details/105279122

你可能感兴趣的:(jmeter,jmeter)