【测试工具】通过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配置

相关推荐
测试199812 小时前
Jmeter HTTP代理服务器录制压力脚本
自动化测试·软件测试·测试工具·jmeter·程序人生·职场和发展·测试用例
web135085886351 天前
全面指南:使用JMeter进行性能压测与性能优化(中间件压测、数据库压测、分布式集群压测、调优)
jmeter·中间件·性能优化
互联网杂货铺1 天前
软件测试之压力测试
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
幸福的达哥1 天前
后端性能测试优化案例
jmeter·压力测试·安全性测试
逻各斯2 天前
用JMeter给要登录的操作做压力测试
jmeter·压力测试
测试杂货铺2 天前
接口测试及常用接口测试工具(Postman/Jmeter)
自动化测试·软件测试·测试工具·jmeter·测试用例·接口测试·postman
陈志化2 天前
JMeter----笔记
笔记·jmeter
测试小罡2 天前
如何在JMeter中配置断言,将非200状态码视为测试成功
jmeter
锦都不二3 天前
一文2000字从0到1用Jmeter全流程性能测试实战
jmeter
Allen Bright3 天前
【JMeter使用-2】JMeter中Java Request采样器的使用指南
java·开发语言·jmeter