这篇具有很好参考价值的文章主要介绍了通过Jmeter压测存储过程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。
通过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;
文章来源地址https://www.toymoban.com/news/detail-573418.html
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下。
三、工具配置及执行:
全局配置如下图:
文章来源:https://www.toymoban.com/news/detail-573418.html
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配置
更多测试好文,请关注公众号:诗泽园
到了这里,关于通过Jmeter压测存储过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!