【问题标题】:Jmeter 500 error in TCPTCP 中的 Jmeter 500 错误
【发布时间】:2017-09-06 01:01:21
【问题描述】:

我已设置 TCP 采样器以传递 XML 数据并检查返回。

我有正确的IP地址,端口号正确,数据准备好了。

但是,我一直收到此错误:

Thread Name: BasicCheck 1-1
Sample Start: 2017-09-06 00:12:59 UTC
Load time: 3520
Connect Time: 1
Latency: 0
Size in bytes: 0
Sent bytes:0
Headers size in bytes: 0
Body size in bytes: 0
Sample Count: 1
Error Count: 1
Data type ("text"|"bin"|""): text
Response code: 500
Response message: org.apache.jmeter.protocol.tcp.sampler.ReadException: Error reading from server, bytes read: 0

响应标头:

SampleResult fields:
ContentType: 
DataEncoding: windows-1252

我知道服务器已启动并正在运行,我将用户名和密码放在 Jmeter 中的 TCP 采样器位置。我就是不知道为什么会出现这个错误。

这是在 Windows 机器上(显然)连接到直接 TCP 服务器。

【问题讨论】:

  • 您是否尝试勾选关闭连接复选框?
  • 连接需要保持打开状态才能在第一条消息之后发送更多消息。

标签: jmeter jmeter-3.2


【解决方案1】:

您需要做以下事情来完成这项工作:

  1. 在 TCP 采样器中使 EOL Byte value=10 Timeout (Miliseconds) for response 输入值为 5000 或 10000
  2. 添加要通过 TCP 采样器作为文本发送的用户定义变量。前任。我想将文本作为 ${STX}2017105557|SAMPLEMESSAGE|Message2${ETX} 发送,因此 STX 和 ETX 是我的用户定义变量。
  3. 添加 bean shell PreProcessor 以将值转换为 ASCII 格式。

示例代码:

[String STX = URLDecoder.decode(vars.get("STX"), "ASCII");
vars.put("STX",STX);
String ETX = URLDecoder.decode(vars.get("ETX"), "ASCII");
vars.put("ETX",ETX);][1]

Jmeter 脚本应如下所示: TCP Sampler Jmeter script

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-02
    • 1970-01-01
    • 2019-07-26
    • 1970-01-01
    • 2015-05-23
    • 2016-08-16
    • 1970-01-01
    相关资源
    最近更新 更多