Jmeterでは、OracleとのDB接続を作成し、以下のクエリを実行しています。
select address , city , zip from table where city="Delhi";
今、これは次のような結果を与えています:
212 Kamla nagar Delhi 11011
次に、これを正規表現を使用して3つの変数に使用し、これらの3つのパラメーターすべてを別のSOAP要求に渡します。
として正規表現を使用しようとしました (d+)
ただし、値は変数1にのみ格納されます。
値を抽出して別のリクエストで使用する方法は?
回答:
回答№1は0JDBCプリプロセッサーを使用できます。 Variable names
または Result variable name
で指定するもの Variable names
クエリによって返された個々の列へのボックスマップ。これらは、次のようにしてアクセスできます。 columnVariable_{index}
.
または
で指定するもの Result variable name
結果セット全体が含まれ、実際にはこれは値へのマップのリストです。この場合、上記の構文は明らかに機能しません。にアクセスする必要があります BeanShell
変数を作成します。
...そして、これらの変数を次のように使用できます ${name_1}
, ${city_1}
, ${zip_1}
DBから値にアクセスするためのSOAPリクエスト。またはとして ${name}
, ${city}
, ${zip}
あなたが使うならば Result variable name
オブジェクト
回答№2の場合は0
JDBCサンプラーを次のように構成します。
つまり、次の行を「変数名」入力に追加します。
address, city, zip
抽出された値には次のようにアクセスできます。
${address_1}
${city_1}
${zip_1}
スクリプトの後半。 1
結果セット行を表します。つまり、JDBC応答に2つの行がある場合- ${address_1}
1行目のアドレスを表します。 ${address_2}
-2行目のアドレスなど
見る JMeterでのJDBCサンプラーのデバッグ 詳細は記事をご覧ください。