在工作的过程中,有时候需要对数据库发起请求或者对数据库压力测试,这个时候就需要用到JMETER JDBC Request,今天这一堂课我们重点介绍JMETER JDBC Request,一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录响应时间信息
jmeter中取样器(Sampler)是与服务器进行交互的单元。
JMETER JDBC Request
JDBC Request可以向数据库发送一个请求(包括:select update delete insert 语句),JDBC Request 需要先配置JDBC Connection Configuration ,配置数据库的连接信息。
首先,先建立一个测试计划,添加线程组
线程数为1,线程组右键单击选择配置元件→ JDBC Connection Configuration(JDBC连接配置)
JDBC Connection Configuration界面如下:
Variable Name(变量名):这里写入数据库连接池的名字
Database URL:数据库连接地址
JDBC Driver class:数据库驱动(可以将需要连接的数据库驱动jar包复制到jmeter的lib/目录下,需重启JMETER,然后在设置测试计划界面,最下面的Library中导入)
Username:数据库登录名
Password:数据库登录密码
简单介绍一下不同数据库的驱动类和URL格式:
设置好JDBC连接配置后,添加JDBC请求,界面如下:
Variable name:这里写入数据库连接池的名字(和JDBC Connection Configuration名字保持一致 )
Query:里面填入查询数据库数据的SQL语句(填写的SQL语句末尾不要加“;”)
parameter valus:数据的参数值
parameter types:数据的参数类型
cariable names:保存SQL语句返回结果的变量名
result cariable name:创建一个对象变量,保存所有返回结果
query timeout:查询超时时间
handle result set:定义如何处理由callable statements语句返回的结果
先在mysql 数据库中间执行select * from plf_users 语句,具体查询结果如下:
设置完采样器之后,为了方便查看请求运行结果,添加监听器,来查看我们的请求是否成功了,下面截图为请求内容,即SQL语句。
察看结果树查看响应数据,正确的显示查询的该表的对应字段的数据,把响应数据跟之前数据库中间的数据进行比较。该select 查询出所有的字段信息。
以上只是对JDBC Request 中间select 请求进行讲解, JDBC Request 中间是支持update delete insert 请求,下面简单介绍delete 请求,Query Type 需要改成“Update statement”。
然后,监听器察看结果树中间查看请求和响应情况
响应数据中间提示 1 update 为数据库中间 ,更新记录条数
访问mysql 数据库 查看 plf_notice 表中间 id=5 的记录是否已经删除,经查询id=5 的记录已经删除
Update insert 请求就不在做讲解,可以自己动手操作,经验证JDBC 请求sql 语句不支持别名格式,比如:delete from plf_notice p where p.id=4;
响应会报:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'p where p.id=5' at line 1 错
如果你觉的文章阅读不过瘾,可以查看详细的视频教程
【软件测试全栈系列课程】请点击我哦…
https://edu.51cto.com/course/25359.html
【博主完整视频课程系列】请点击我哦…
https://edu.51cto.com/lecturer/13226632.html
【JMETER基础和实践课程】请点击我哦…
https://edu.51cto.com/course/28017.html
【JMETER 性能测试基础与项目实战视频课程】请点击我哦…
https://edu.51cto.com/course/16055.html
【Jmeter+ant+jenkins接口层性能与自动化测试课程】请点击我哦…
https://edu.51cto.com/course/19323.html
【零基础新手入门软件测试基础课程】请点击我哦…
https://edu.51cto.com/course/27846.html
【软件测试之移动端测试系列课程】请点击我哦…
https://edu.51cto.com/course/26878.html
【Fiddler接口抓包神器使用教程】请点击我哦…