Jmeter系列之数据库操作

2021/6/6 19:21:38

本文主要是介绍Jmeter系列之数据库操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

以下主要介绍jmeter数据库操作:JDBC Connection Configuration、JDBC Request组件介绍及数据库查询操作实战。


在做接口测试中,我们需要对数据库发起请求或者对数据库施加压力,比如查询手机号是否注册、充值后余额是否正确等,这时候就需要用到JDBC Request。JDBC Request可以向数据库发送一个请求,一般配合JDBC Connection Configuration配置元件一起使用。



引入jar包


使用不同的数据库,我们需要引入不同的jar包,本文主要介绍mysql。

①方法一:将jar包复制到jmeter的lib目录;

②方法二:Test Plan(测试计划)引入jar包;

新建Test Plan(测试计划),然后添加mysql jar包的路径。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=



JDBC Connection Configuration



1
JDBC Connection Configuration界面介绍


①Thread Group(线程组),右键,依次选择Add--》Config Element--》JDBC Connection Configuration;

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


②JDBC Connection Configuration界面如下:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


Database Connection Configuration:

  • Database URL: 数据库URL,比如mysql格式: jdbc:mysql://服务器地址:3306/数据库名  

  • JDBC Driver class: 数据库JDBC驱动类名:com.mysql.jdbc.Driver

  • Username:数据库连接用户名

  • Password:数据库连接密码



2
不同数据库的驱动类和URL格式


DatabaseDriver classDatabase URL
MySQLcom.mysql.jdbc.Driverjdbc:mysql://host:port/{dbname}
PostgreSQLorg.postgresql.Driverjdbc:postgresql:{dbname}
Oracleoracle.jdbc.driver.OracleDriverjdbc:oracle:thin:user/pass@//host:port/service


JDBC Request


1
JDBC Request界面介绍


①Thread Group(线程组),右键,依次选择Add--》Sampler--》JDBC Request。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


②JDBC Request界面如下:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


  • Variable Name:数据库连接池的名字,需要与JDBC Connection Configuration的Variable Name 名字保持一致。

  • Query Type:根据不同的使用场景设置SQL的语句类型,如:Select Statement用于查询,Update Statement则可用于更新和删除记录、Prepared Select Statement则为带参数的select 语句的查询。

  • Parameter valus:参数的值,如有多个值,使用逗号分隔。

  • Parameter types:参数值对应的类型,比如INTEGER, DATE, VARCHAR, DOUBLE,如有多个值,使用逗号分隔。

  • Variable names:保存sql语句返回结果的变量名。

  • Result variable name:创建一个对象变量,保存所有返回的结果。

  • Query timeout:查询超时时间。

  • Handle result set:定义如何处理由callable statements语句返回的结果。


数据库操作实战


现在我们需要根据商品id来查询商品数量。

①创建Test Plan(线程组),如果jar包未放到jmeter的lib目录下,那么就在Test Plan引入jar包。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


②创建JDBC Connection Configuration,配置数据库连接信息如下:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


③创建JDBC Request,配置如下:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


④创建View Results Tree(察看结果树),运行后,结果显示:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=





这篇关于Jmeter系列之数据库操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程