ユニットテスト用のutplsqlについて知っていますが、これをループ内で使用してストアドプロシージャをテストする方法はありますか?PLSQLのテストをロードするツールはありますか
私はJMeterのを使用するか、任意のJDBCドライバを介して行きたくない- あなたがしているので、ちょうどPROC
ユニットテスト用のutplsqlについて知っていますが、これをループ内で使用してストアドプロシージャをテストする方法はありますか?PLSQLのテストをロードするツールはありますか
私はJMeterのを使用するか、任意のJDBCドライバを介して行きたくない- あなたがしているので、ちょうどPROC
をストアドバニラのパフォーマンスを分析しようとしている私は、ユニットテストツールは正しいアプローチだとは思いません機能性についてのアサーションは実際には行っていません。負荷テストでは、大量のデータを使用してプロシージャを実行する方法を知りたいのです。
ループや大きなテーブルで実行し、プロファイラを使用してブートロールを見つけることができます。 11gの場合はthe built-in hierarchical profilerをチェックしてください。
begin
DBMS_HPROF.START_PROFILING (
location => 'PROF_DATA_FILE_DIR'
, filename => 'HPROF_RUN1_20111109'
);
some_pkg.generate_lots_of_work(p_id => 1234);
DBMS_HPROF.STOP_PROFILING;
end;
/
またはループ中:このような
何か
明らかbegin
DBMS_HPROF.START_PROFILING (
location => 'PROF_DATA_FILE_DIR'
, filename => 'HPROF_RUN2_20111109'
);
for i in 1..1000
loop
some_pkg.do_this(p_num => i);
end loop;
DBMS_HPROF.STOP_PROFILING;
end;
/
、これは、負荷テストのためのデータの塊を生成する際に、あなたを助けにはなりません。これは常に最も難しい部分です。
LoadRunner、Silk Performer、QALoad、およびRational Performance Testerは、問合せのパフォーマンス・テストを直接またはストアド・プロシージャに対して実行するためのデータベース機能を備えています。
これらのツールがこの機能を備えているのは、client = serverの標準が2層のデータベースの厚いクライアントアーキテクチャであった場合、一般に市場に存在していたからです。 2000年以来市場に登場してきたものの大部分は、ほとんどウェブだけです。
興味深い記事があります:http://www.dba-oracle.com/t_benchmark_testing.htm – diagonalbatman
JDBCには何が問題なのですか?ストアドプロシージャを呼び出す際のオーバーヘッドは無視してください(プロシージャの実行時と比較して) –
@a_horse_with_no_name:すでにいくつかのJDBCテスト結果がありますので、さらに分割する必要があります。 OracleドライバのDEBUGを有効にすると、実際の時間がかかるでしょうか? – shinynewbike