【测试工具】通过Jmeter压测存储过程

目录

一、存储过程准备

1.1、 建立空表

java 复制代码
CREATE TABLE test_data ( id NUMBER, name VARCHAR2(50), age NUMBER );

1.2、 建立存储过程

java 复制代码
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;
 

1.3、调试

java 复制代码
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下。

三、工具配置及执行

全局配置如下图:

3.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. 连接数据库的用户名和密码

3.2、配置吞吐量控制器

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

3.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语句即可。注意语句最后不要写";"

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

相关推荐
文人sec1 天前
性能测试-jmeter9-逻辑控制器、定时器压力并发
测试工具·jmeter·性能优化·模块测试
CesareCheung2 天前
JMeter分布式压力测试
分布式·jmeter·压力测试
测试界清流2 天前
jmeter使用技巧
jmeter
春时似衿里2 天前
jmeter配置数据库连接步骤
数据库·jmeter
新知图书2 天前
JMeter的安装部署
jmeter
程序员杰哥2 天前
什么是Jmeter? Jmeter工作原理是什么?
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·测试用例
乐神嘎嘎嘎3 天前
Jmeter测试
jmeter
卓码软件测评3 天前
第三方软件测试机构【性能测试工具用LoadRunner还是JMeter?】
java·功能测试·测试工具·jmeter·性能优化
BatyTao3 天前
Jmeter执行数据库操作
数据库·jmeter
二宝哥3 天前
性能测试工具Jmeter之java.net.BindException: Address already in use
jmeter