You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Robot Framework验证WebSocket连接接收消息及Send异常排查

问题原因

你混淆了WebSocketClient.Send方法的返回值:该方法返回的是成功发送的字节数,而非服务器返回的响应消息。你看到的13就是你发送的内容对应的字节长度,并非服务器的echo结果。

解决步骤

要获取服务器的echo响应,需要在发送消息后调用WebSocketClient.Recv方法来接收:

Echo
    ${my_websocket}=  WebSocketClient.Connect  wss://*************/websocket
    ${result}=  WebSocketClient.Recv  ${my_websocket}
    Should Be Equal  Connected!!!!!  ${result}

    # 发送消息,无需接收Send的返回值(除非要验证发送的字节数)
    WebSocketClient.Send  ${my_websocket}  Hello
    # 接收服务器的echo响应
    ${echo_result}=  WebSocketClient.Recv  ${my_websocket}
    Log    ${echo_result}
    Should Be Equal  Hello  ${echo_result}

    WebSocketClient.Close  ${my_websocket}
额外说明
  • 如果你传递带双引号的"Hello"作为发送内容,实际发送的字符串会包含引号,此时字节数会是7,但你得到13可能是因为编码或额外转义,建议直接传递不带引号的Hello作为参数。
  • 确认服务器确实支持echo功能,会将收到的消息原样返回。

内容的提问来源于stack exchange,提问作者Jacob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 23:07:41