通过Jmeter压测存储过程

目录

一、存储过程准备:

二、测试工具准备:

三、工具配置及执行:

1、配置JDBC Connection Configuration:

2、配置吞吐量控制器(可跳过):

3、配置JDBC Request:

对于存储过程:

对于SQL语句:

4、其他配置如查询结果树,聚合报告,TPS,PerfMon监控等,同基础Jmeter配置


一、存储过程准备:

1、建立一个空表:

CREATE TABLE test_data ( id NUMBER, name VARCHAR2(50), age NUMBER );

2、建立一个存储过程:

CREATE OR REPLACE PROCEDURE insert_test_data
(n IN NUMBER) AS
BEGIN
  --EXECUTE IMMEDIATE 'truncate table test_data';
  FOR i IN 1..n LOOP
    INSERT INTO test_data VALUES (i, 'Name' || i, i * 10);
  END LOOP;
COMMIT;
END insert_test_data;

3、调试下:

select count(*) from test_data t; call insert_test_data(1000); truncate table test_data;

二、测试工具准备:

1、网上找到:mysql-connector-java-8.0.29.jar(版本不限定),放到Jmeter目录\lib\ext下。

2、网上找或将本地:ojdbc14.jar,放到Jmeter目录\lib下。

三、工具配置及执行:

全局配置如下图:

1、配置JDBC Connection Configuration:

右键,Config Element下添加节点,配置如图:

a. Name可以随意改,改后保存生效

b. Variable Name for created pool,随便起一个,不过需要跟后续步骤的配置一致,建议就叫oracle

c. 中间一大段暂时默认,Validation Query随意选一个

d. Database URL: jdbc:oracle:thin:@{ip}/{oracle服务名},其中{ip}是数据库服务器ip,{oracle服务名}是TNS中的Service_Name,类似orcl这种

e. 连接数据库的用户名和密码

2、配置吞吐量控制器(可跳过):

如图就是占20%的吞吐量。示例中SP占20%,SQL占80%。模拟实际的80%查询,20%写入的场景。

3、配置JDBC Request:

右键,Sampler里找到JDBC Request,添加。

对于存储过程:

a. Variable Name of Pool...:和JDBC Connection Configuration配置一致,这里配为:oracle

b. Query Type: 存储过程的话,选Callable Statement

c. Query: 如图,写存储过程调用,照图上格式写,参数用?表示,多个参数用逗号隔开

d. Para Values,参数值,多个用逗号隔开

e. Para types, 参数的数据类型

f. Variable names,返回值列名

g. HandleResutleSet:Store as String即可

对于SQL语句:

Query Type选Select Statement,Query中直接写SQL语句即可。注意语句最后不要写“;”

4、其他配置如查询结果树,聚合报告,TPS,PerfMon监控等,同基础Jmeter配置


 以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值