いくつかのパフォーマンステストを自動化しようとしています。 Jenkinsジョブからサーバーの場所を汎用jmxに渡したいと思います。私は次のようなことをしたいです:
jmeter -n -t foo.jmx -JtestingIP = IP
foo.jmxがtestingIP
を取得するようにします。
これを行う適切な方法は何ですか?そのjmeterコマンドを実行すると、変数が保存されたと表示されますが、${testingIP}
または${\_\_P(testingIP,)}
をjmxに挿入すると、${testingIP}
または${\_\_P(testingIP,)}
が単なる文字列として解釈されます。
私は何を間違っている/まったくしていないのですか?これも可能ですか?
必要なのは、コマンドライン(またはシェル)から-Jオプションを使用してJMeterを起動することだけです。例えば :
-JTestIP = 10.0.0.1
また、スクリプトで値を取得するには、関数_ Pを使用します。
例:
${__P(TestIP)}
それはそれを行う必要があります。
次のようなJMeterプロパティを渡さずにスクリプトを実行する場合は、デフォルト値を設定する必要があります。
$ {__ P(TestIP、1.1.1.1)}
このリンクをご覧ください http://mkbansal.wordpress.com/2012/08/01/jmeter-command-line-script-execution-with-arguments/ 。また、${__P(testingFromCommandLineIP,defaultIP)}
などのデフォルト値を指定しようとします。ここで、testingFromCommandLineIP
-コマンドラインからテスト計画を実行するときに指定する引数、defaultIP
-デフォルト値