4

TCP Sampler で簡単なテストを実行しようとしています

デフォルトの TCPClient クラスを使用している場合、応答タイムアウト時間が経過した後、サーバーから正しい応答を受け取り、サンプラーの結果にエラー 500 が表示されます。

応答コード: 500 応答メッセージ: org.apache.jmeter.protocol.tcp.sampler.ReadException:

JMeter はメッセージの終わりの文字を認識しないようです (サーバーは\r\nを送信します)。

EOM を表示するように JMeter を構成するにはどうすればよいですか?


私は BinaryTCPClientImpl を使用しようとし、 Jmeter.properties で tcp.BinaryTCPClient.eomByte = 13 を設定しようとしまし、binaryTCPClient は HEX データを想定していますが、人間が読める文字列を送信しても、eomByte は無視されます...

何か案は?

4

3 に答える 3

1

問題が見つかりました。

これらのサーバーは、いくつかのケースで\ r\nを送信しませんでした。サーバーが修正された後、すべてが機能し始めました。

于 2012-06-28T14:30:05.933 に答える
0

私は同じ動作に遭遇し、提供された応答を調べました (サーバー側でメッセージの最後に \r\n を送信し、GUI でeol バイト値オプションを設定します)、うまくいきませんでした。

私の解決策:この質問に続いて、\0 は Jmeter が TCP サンプラーで期待する eol 文字であることがわかりました。サーバーが \0 でメッセージを終了すると、メッセージは Jmeter で受信されます。

その他の参考文献: Jmeter のドキュメント(TCPClientImpl の章 - tcp.eolByteについて説明されています)。

いくつかのオプション:メッセージのサイズが一定の場合、LengthPrefixedBinaryTCPClientImpl を調べることができます (このディスカッションを参照してください)。

于 2020-04-27T11:18:56.027 に答える