jmeter tcpsampler eol 设置:
背景:
在运行 tcpsampler 后 如果报错:org.apache.jmeter.protocol.tcp.sampler.ReadException:
需要设置 eol
表示
给 inputstream 标记一个结束标记
该标记类型 int 值为-128-127 计算方法为一个字节的十进制值
比如如果标记位 16 进制是 7e 二进制是 0111 1110 对应的十进制是 126
so:
根据服务器返回值 截取最后一个字节, 注意如果是 16 进制,应该是两个字符
比如,在我的项目中返回值转为 16 进制的时候如下:
7e80010005013819415186010103e7020000d47e
那么最后一个字节(8 位)应该是 7e 换算为 10 进制后为 126
那么在 eol 处设置为 126 ReadException: 异常消除
ps:
源代码中判断条件:
while ((x = is.read(buffer)) > -1) {
w.write(buffer, 0, x);
if (useEolByte && (buffer[x - 1] == eolByte)) {
break;
}
}