Jmeter报错org.apache.jmeter.protocol.tcp.sampler.ReadException
Jmeter运行TCP取样器,报错如下:
解决办法:
1 设置合理的响应超时时间。
2 TCP取样器设置界面,需要设置EOL值。
如何设置该值呢?
根据服务器返回值截取最后一个字节, 注意如果是16进制,应该是两个字符。
以发送接收16进制数据包为例,假设服务器返回值为以下内容(可以在jmeter察看结果树响应数据里查看):
7e80010005013819415186010103e7020000d47e
最后一个字节是7e,换算成10进制后为126,在EOL设置为126后,该报错问题已解决。
提供一个换算工具:在线进制转换
EOL说明具体可参考End of line(EOL) byte value
关于此问题其他回答:
If you don't define the EOM byte, it reads until the end of the stream. Since the stream isn't going to end, it times out. You have to set the EOM byte correctly for the protocol you're using. (answered by David Schwartz)