← 返回项目
嵌入式通信协议自动化测试平台
使用模拟协议描述多类通信接口的统一测试执行模型,覆盖连接、帧解析、断言、证据与报告。
FastAPIPythonTCPUDPpytest可追溯性
背景
通信相关测试往往从若干独立脚本开始:一个脚本连接,一个脚本发送固定报文,另一个脚本整理日志。随着协议类型、异常场景和回归次数增加,准备方式、错误表达和结果格式逐渐不一致,失败也难以从报告追溯到原始观察。
本项目以模拟 TCP/UDP 和可替换传输适配器为边界,研究如何形成统一执行内核。它不宣称覆盖所有总线,也不公开任何工作环境细节。
问题与限制
- 传输连接、协议编解码和业务断言相互耦合,难以单独测试;
- 一次接收被误认为一帧,超时、截断和重连行为不稳定;
- 重试覆盖首次失败,报告缺少从断言到原始报文的证据链;
- 协议增加时复制整套执行逻辑,维护成本持续上升。
职责
个人负责问题拆解、分层架构、模拟协议设计、核心执行模型、自动化测试和公开案例脱敏。项目成果限定为可复用模型与验证方法,不使用未经确认的团队、业务或性能指标。
架构
正在绘制图表…
执行器只依赖抽象动作和观察对象;适配器管理资源生命周期;编解码器处理消息边界与字段;报告从结构化证据生成,不反向影响判定。
难点
难点集中在异步事件顺序、旧连接事件、半帧缓存、迟到 UDP 响应和重试证据保留。若所有异常都转成布尔失败,报告无法区分通信基础设施故障和被测行为不符合预期。
方案与取舍
使用带连接代次的显式状态机隔离旧事件;解析器接受任意分片输入;每次尝试创建不可覆盖的证据记录;错误分为连接、协议、断言、报告与取消。模拟适配器能够确定性注入超时、断连、重复和校验错误。
- 运行、用例、步骤和尝试的统一模型;
- TCP 增量帧解析与 UDP 数据报观察;
- 连接状态机、超时、取消和有界重试;
- 原始证据、字段结果和断言的稳定标识关联;
- pytest 参数矩阵、模拟服务和异常注入;
- 从同一结构化结果生成简洁报告。
验证与结果
已形成可独立说明和测试的执行边界,并为网络读取、帧解析、状态转移和证据链整理了公开验证用例。这里不披露真实业务效率或质量数字;可验证结果以模拟测试与关联技术笔记为准。
复盘
继续补充串口类适配器实验、取消语义和隔离环境中的完整报告回放;只有接口稳定后再评估插件机制。