JMeter で、Oracle サーバーの構成を追加しました。次に、JDBC リクエスト オブジェクトを追加し、ResultSet 変数名をstatus
.
テストは正常に実行され、結果はツリービュー リスナーに表示されます。
変数を使用して文字列と比較したいのですstatus
が、配列リストを文字列にキャストすることについてjmeterがエラーをスローしています。
この変数を取得し、While Controller で文字列と比較する方法は?
JDBCリクエストサンプラーには2種類の結果変数があるため、これを理解するために少し時間を費やし、受け入れられた答えが少し間違っていると思いました。
ボックスで指定したものはVariable names
、クエリによって返された個々の列にマップされ、これらは と言ってアクセスできますcolumnVariable_{index}
。
で指定したものResult variable name
には結果セット全体が含まれており、実際にはこれは値へのマップのリストです。この場合、上記の構文は明らかに機能しません。
JMeter の JDBC リクエストで返される ResultSet 変数は for 配列にあります。したがって、 variable を使用するstatus
場合は、 index とともに使用する必要があります。最初の (または唯一の) レコード user を使用する場合status_1
。したがって、のように使用する必要がありますstatus_{index}
。
String host = vars.getObject("status").get(0).get("option_value");
print(host);
log.info("----- " + host);
フォームの完全な情報は、このリンクの「黄色いボックス」を読んでください: http://jmeter.apache.org/usermanual/component_reference.html#JDBC_Request
その他のユーティリティの例: http://jmeter.apache.org/usermanual/build-db-test-plan.html