调试自动化
在生成通信数据之后,可以在数据发送和接收两方面实现调试自动化。「周期发送」功能可以模拟传感器设备周期性采样和发送数据。「自动回复」功能可以模拟服务端对请求的响应。「接收分片设置」功能适用于流式传输协议(如TCP),可以对接收到的数据执行缓存、合并、拆分等操作。
周期发送
- 在新建接口和数据,绑定本地端口并新建远端之后,点击「开启周期发送」。
- 遵循默认设置,重复发送10次数据,间隔时间为1000毫秒。
自动回复
- 在新建接口和数据,绑定本地端口并新建远端之后,点击「开启自动回复」。
注意:此接口将本地端口设置为
9000,远端端口设置为8000。下面步骤会新建另一接口,端口设置相反,以便发送数据。
- 新建对端接口页面,本地端口是
8000,远端端口号9000,点击「发送」。可以看到对端在接收到数据后自动回复了指定数据。
接收分片设置
在流式传输协议中,数据以字节为单位进行传输,用户发送的通常是多个字节组成的数据包。由于网络分片和操作系统缓存等因素,接收端收到的数据可能无法对应完整的原始数据包。具体表现为:
- 收到的数据可能不足一个完整的数据包;
- 可能包含两个数据包的部分内容;
- 可能包含多个数据包的内容,且开头或结尾可能是某个数据包的部分数据。
因此,在流式传输中,接收端通常需要根据用户定义的规则对数据进行缓存、合并和拆分等操作,以将字节流还原为发送时的完整数据包。
假设TCP服务器接收来自客户端的文本数据,每一段独立的文本数据以;结尾。服务端需要定义以;为分隔符的接收分片规则。操作流程如下:
- 新建「TCP服务器」页面,监听8000端口。
- 右上角点击「更多设置」,弹出设置面板。
- 切换到「接收」界面,选择「运行设置」,接收类型选择「自定义」,输入
;的十六进制ASCII码3B,点击「确定」。
- 新建「TCP客户端」页面,连接服务器端口
8000。
- 输入文本
Hello1;Hello2;,点击「发送」。可以看到,客户端一次性把输入文本发送出去。
- 切换到服务器页面,可以看到服务器接收到了两个数据包,内容分别为
Hello1;和Hello2;,因为收到的数据自动按分隔符;拆分为多条数据。
