私はJMeterで働いています。次のようなユーザー定義変数を使用してテストホストを指定したいと思います。
variable name value
localhost localhost
test 192.168.0.1
hostname ${localhost}
テストを実行すると、ホスト名の値が置き換えられていないことがわかり、明らかにテストは失敗します。プロパティを使用してコマンドラインからホスト名を渡すか、単にホスト名の値を変更できることはわかっています。私が説明したようにそれを行うことは可能ですか?
ありがとう。
私は自分の問題をなんとか解決できました。ホスト名変数の値を${__evalVar(${localhost})}
に変更しましたが、次のエラーが発生しました:
ERRROR jmeter.functions.EvalVarFunction:変数はまだ定義されていません
そこで、サンプラーノードの「ユーザー定義変数」の子ノードにホスト名変数の宣言を移動しました。それはそれを解決しました。
これを解決するには、hostname = $ {__ eval($ {localhost})}を使用する必要があります
http://jmeter.Apache.org/usermanual/functions.html#__eval
Carlosの回答はevalVarを使用しているため、間違いがあります(担当者のためコメントできません)。これには、引数としてプレーンな文字列が必要です。
これは機能します:$ {__ evalVar(localhost)})
これは機能します:$ {__ eval($ {localhost})}
これは機能しません(現在の回答):$ {__ evalVar($ {localhost})} http://jmeter.Apache.org/usermanual/functions.html#__evalVar
新しい新しいバージョン(2.2以降)では、${__V(${...})}/
を使用できます。
例:${__V(${SERVER_CONTEXT})}/rest
@Alies Belikが言ったように、
ERRROR jmeter.functions.EvalVarFunction: Variables have not yet been defined
次に、次の他のUDV(ユーザー定義変数)ノードで2番目の変数を定義します。