static void main
メソッド内のprintln()は何も印刷しませんが、ターミナルではprintln()のみが印刷します。これが私のコードです:
class CalcMain {
static void main(def args) throws Exception {
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("groovy");
println("testing");
}
}
そして、私が実行したとき、それはパス(Jmeterの緑の三角形)を示していますが、端末には何も印刷しません
一方、次のような単純なプログラム
println("testing");
端末に印刷します。
誰かが私が間違っているところを教えてもらえますか?
ありがとう
JmeterのGroovyまたはBeanshellステップでSystem.out.printlnを使用しないでください。代わりに、これを行います。
1. Enable the stdout console in Jmeter so that you can see the output.
2. Use log.info("Message:" + vars.get("variableName")); instead.
以下を使用して、「結果ツリー」のJMeter応答タブにテキストを表示します。
SampleResult.setResponseData("Document: " + variable,"UTF-8");
以下を使用して、JMeterのコンソールテキスト領域にログインします。
log.info("hello");
3番目のオプションは、Java標準:
System.out.println("Any String");
上記は、任意のJava/Groovy/JSR223サンプラーから書き込むことができます。ただし、ウィンドウでJMeterUIを開いた親CMDウィンドウに出力されます。
「2. OUT」の章は答えを示しています。
https://jmetervn.com/2016/12/05/jsr223-with-groovy-variables-part-1/
OUT
コマンドを使用します。
OUT.println("INPUT MESSAGE HERE");
すべてのコードを提供したわけではありません。インポートも必要なので、自分の部品だけがエラーを生成します。クラスの定義はそれ自体では実行されません。インスタンスとして必要であり、明示的に実行すると、ターミナルに出力されます(System.out.
プレフィックス付きとなしの両方)。
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
class CalcMain {
static void main(def args) throws Exception {
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("groovy");
println ("testing1");
System.out.println ("testing2");
}
}
CalcMain test1 = new CalcMain();
test1.main();
println ("testing3");
出力:
testing1
testing2
testing3
試してみてください:System.out.println( "testing")