f81bb38b64
- 故障录波设计说明 §10 新增「板级远程半轮记录」:真 FAT 落盘、触发 时序三样本、冷却恢复、轮转同号覆盖、PC 侧坏段拒收、104 并发 (参考主站 16/18 绿,两条 COV = 标定闭锁腿物理预期)六项 PASS; drop 400–640 点/窗入账为纯观察项(丢样本不丢采集实测面)。 - 新缺陷「回放页段表枚举恒空(板级)」登记登记簿 §2:五面判别钉死 唯 ui_task_wave_scan() 在 uiTask 拿不到目录条目;伴生纪律缺陷 f_opendir 失败仍钉 s_wave_scanned=1(修复方向同记录)。 - 新增 docs/测试说明/专项验证/故障录波板级到场轮执行手册.md:剩余 人到场判据拆成四幕,逐步写清谁出手/做什么/会看到什么,含到场 检查清单、现场记录表、两个用户决定点、收工还原清单与分诊; 索引挂行 docs/README.md 与 测试说明/README.md(专项 5→6 篇)。 - scripts/board_ui_nav.py 文件头补三条 7003 驱动纪律(ACK 与推流 同 TCP 须 drain 静默、home 首 e 是重开最近页捷径、级联光标记忆)。 - 自我更正入档:起草台架计划时带入的「≤15 s 判据」全仓无属主, 已溯源改指 WAVE_SEAL_TIMEOUT_MS 2 s 封存窗(真锚);「§1.2 两个 待台架核数值」为错引,改指 §4.2 兜底行与 wave_ring.h 冷却时长。 bench 锁已 release、设备未改烧;证据包在 ci-artifacts/wavebench/。 gate: doc-links --all --sections-strict rc=0(218 篇 3103 处 无法判定 0);mermaid 预检新发 0;py_compile 过;七文件 BOM/CR/U+FFFD 全零。
6.1 KiB
6.1 KiB
测试说明目录导航
本目录放测试文档与测试采集数据,2026-10-30 起按用途分六个子目录(原先 25 篇文档 与 3 个数据目录平铺在一层,找文档靠记忆、命名靠约定)。 全量索引与每篇文档的内容说明在
docs/README.md§6(同一事实只在一处详述, 本文件不重复那些描述),这里只回答两件事:东西该放哪一层、每层现在有什么。
1. 结构与职责
docs/测试说明/
├── 流程与规范/ 测试开发的标准动作、门禁决策表、测试文档模板(3 篇)
├── 单元测试/ 主机侧纯逻辑单测的说明 + 跨全部套件的覆盖率口径(9 篇)
├── 板级测试/ 上板测试:芯片/模块测试指南 + 实机测试实施流程(5 篇)
├── 专项验证/ 针对一个问题或一次复验的台架专项流程、存储恢复操作(6 篇)
├── 测试工具/ PC 侧工具用法:串口助手、ST-LINK_CLI 烧录与复位(3 篇)
└── 测试数据/ 测试跑出来的原始证据:boot_log_data/ m2_data/ m3_data/
归层的分界线是"这份文档随什么一起演进":跟着测试方法走 → 流程与规范;跟着主机侧 单测代码走 → 单元测试;跟着真机套件与硬件走 → 板级测试;跟着一次结论走(写完即定稿 的专项)→ 专项验证;跟着一个工具走 → 测试工具;不是文档而是证据 → 测试数据。
2. 归层判据(新文档该放哪)
| 你手上的东西 | 去处 | 判据 |
|---|---|---|
| 任何测试都要遵守的流程、命名、门禁口径 | 流程与规范/ |
它约束别的测试文档怎么写 |
test/host/<模块>/ 那套主机侧单测的说明(用例数、断言点、抓出的缺陷) |
单元测试/ |
跑它不需要真机;文件名用 <模块>单元测试说明.md |
需要真机/台架、对应 test/board/ 套件或某颗芯片的验收步骤 |
板级测试/ |
涉及硬件接线、烧录、板端标记;模块指南命名 <芯片>_Test_Guide.md |
| 针对一个具体缺陷或一次复验的验证动作(非常跑套件)、或一类恢复操作 | 专项验证/ |
有明确的"做完就结束"边界,结论沉淀进模块文档/问题记录 |
| 讲一个 PC 侧工具怎么用(命令、参数、排障) | 测试工具/ |
主体是工具本身,不是被测对象 |
| 测试产出的原始数据(JSON、串口片段、二进制快照) | 测试数据/<采集批次目录>/ |
它是一手证据,不是说明 |
判据冲突时按这个顺序裁决:是否需要真机执行 → 是则 板级测试/;否则是否只服务一次专项
结论 → 是则 专项验证/;否则按对象类型(单测说明 / 工具 / 流程)归层。拿不准就放
专项验证/ 并在提交说明里写明理由——专项验证/ 是唯一允许"先收下再迁移"的层。
3. 现有文件清单(按子目录)
| 子目录 | 文件 |
|---|---|
流程与规范/ |
测试开发标准流程.md · 自动化测试流程.md · 测试文档模板规范.md |
单元测试/ |
看门狗单元测试说明.md · 系统时钟单元测试说明.md · 开机账本单元测试说明.md · 配置文件单元测试说明.md · ADC输入层单元测试说明.md · 相量层单元测试说明.md · 卷锁单元测试说明.md · 时间同步单元测试说明.md · 主机单测覆盖率口径.md |
板级测试/ |
CH395F_Test_Guide.md · GD5F2GQ5UE_Test_Guide.md · SD2506_Test_Guide.md · FTP_Test_Guide.md · 实机测试实施指南.md |
专项验证/ |
ADC前端注入验证流程.md · 启动日志原子性复验流程.md · 链路延迟测试说明.md · 存储维护与容量恢复.md · 模拟器差距清单.md · 故障录波板级到场轮执行手册.md |
测试工具/ |
串口助手使用指南.md · 串口助手设计说明.md · ST-LINK_CLI_复位使用说明.md |
测试数据/ |
boot_log_data/(39 个文件,串口/SoE 一手证据)· m2_data/(8 个,链路时延安静档)· m3_data/(11 个,链路时延 M3 各档) |
各子目录内部不再加下一层:一层子目录 + 文件名前缀(模块名 / 芯片名)已足够定位,再加层只会 让引用变长、让下面第 4 条的递归门禁 glob 更难核对。
4. 四条硬约束
测试数据/里的文件是一手证据:只增不改。数值被"顺手格式化"就等于基线失效;要更正 结论请改文档并另存新证据文件,不动旧文件。- 两类文件名有机器面,被
scripts/check_test_traceability.py按目录递归扫描(自本目录 根往下找*_Test_Guide.md与*单元测试说明.md):模块指南落板级测试/、单测说明落单元测试/,换层等于让追溯门禁看不见它。 - 改名 / 挪目录一律走
scripts/rename_ref.py(先 dry-run 再--apply),它会同步改写 全库引用;手工扫引用既慢又漏 →docs/文档规范.md§3.6。它搬目录时原有两个会改坏内容的坑 已修(同日加了--selftest回归),本目录当时的处置见下面第 5 节。 - 引用本目录文档时用仓库根相对路径(形如
docs/测试说明/<子目录>/<文件名>.md);只有图片用 文档所在目录相对 →docs/文档规范.md§3.1 / §3.2。
5. 本次分层的处置记录(2026-10-30)
scripts/rename_ref.py 当时搬目录有两个坑(权威记录在 docs/文档规范.md §3.6 第 4/5 条,两处已于
同日修复并加 --selftest 回归;这里只留本目录的处置):
测试数据/下 23 个证据文件的内容曾被脚本误改 → 已用git show HEAD:<旧路径>的原始字节逐字节还原, 现在这三个目录是纯改名(内容与 HEAD 逐字节一致)。- 数据 README 指向外部的
../出链未自动补层级 → 已手工核对补齐(本目录测试数据/*/README.md与专项验证/链路延迟测试说明.md)。