工业验证测试报告模板

用途: 路线图 Phase 2 各支持协议的联机验证归档模板。
门禁: 须满足 G-Industrial — 工业验证门禁。
说明: 每协议一份报告;仿真器与现场设备须分别注明,不可混填为「已通过现场验证」。


1. 基本信息

字段 内容
报告编号 IND-________
协议 ☐ Modbus TCP ☐ Modbus RTU ☐ OPC UA ☐ Siemens S7 ☐ DL/T645 ☐ BACnet
edgeCore 版本 v________(Git commit:________)
测试日期 开始:________ 结束:________
测试负责人 ________
环境类型 ☐ 现场设备 ☐ 高保真仿真器 ☐ 混合(注明各场景)

2. 测试环境

2.1 设备与固件

项目 说明
设备型号 / 仿真器  
固件 / 软件版本  
从站 / 节点数量  
采集点位规模(tag 数)  
扫描周期配置  

2.2 网络拓扑

(示意:网关 ──[以太网/RS485]── 设备/PLC;注明 VLAN、NAT、串口参数等)
项目 说明
网关硬件 / OS  
网络类型 ☐ 以太网 ☐ RS485 ☐ 其他:________
延迟 / 带宽基线  
故障注入方式 ☐ 拔线 ☐ 防火墙规则 ☐ tc/netem ☐ 设备侧重启 ☐ 其他

2.3 edgeCore 配置摘要

  • 通道 ID / 驱动配置路径:
  • 超时 / 重试 / CB 相关参数(如有覆盖):
  • diagnostics 采样间隔:

3. 测试场景清单

按协议风险选择 24h 或 72h 长跑时长;其余场景为必测项。

# 场景 必测 计划时长 执行日期 结果 备注
S1 24h / 72h 长跑 ✔ ☐ 24h ☐ 72h   ☐ 通过 ☐ 失败 ☐ 跳过  
S2 网络断开恢复 ✔     ☐ 通过 ☐ 失败 拔线 / 防火墙 / 路由切换
S3 PLC / 设备重启 ✔     ☐ 通过 ☐ 失败 设备侧重启后自动恢复采集
S4 网络抖动 ✔     ☐ 通过 ☐ 失败 延迟波动、间歇丢包
S5 超时 ✔     ☐ 通过 ☐ 失败 响应超时与 CB 联动
S6 高丢包 ✔     ☐ 通过 ☐ 失败 极端网络下的隔离与恢复

场景通过定义(每项): 采集恢复、无 channel 级 Offline(除非预期)、同通道其他设备不受影响(共享链路协议)、无 panic / 死锁。量化阈值与 PASS/WARN/BLOCK 裁量见 G-Industrial — 发布判定标准。


4. 指标记录

4.1 汇总指标(测试全程 / 稳态窗口)

指标 字段 / 来源 阈值(联机) 实测 是否达标
Scan Lag P95 scan_lag_p95_ms <150ms(PASS)   ☐ PASS ☐ WARN ☐ BLOCK
Scan Lag P99 diagnostics / 采样 记录值;>300ms 须说明   —
Scan Drift 均值 scan_drift_avg_ms <80ms(PASS)   ☐
任务失败率 tasks_failed/tasks_executed <0.1%(PASS)   ☐
Miss Deadline scan_miss_deadline_total 稳态 =0   ☐
恢复时间 场景 S2–S6 各次 S2≤60s;S3≤120s;超 2× 为 BLOCK   ☐
CB Open 次数 driver_circuit_open_total 可解释、可恢复   ☐
Heap drift 60s / 1h / 长跑窗口 <8%(PASS)   ☐
GC pause max gc_pause_max_ms <30ms(PASS)   ☐
Goroutine 数量趋势 runtime.NumGoroutine 采样 无持续增长   ☐

4.2 分场景指标(可选附表)

场景 Lag P95 Lag P99 失败率 恢复时间 CB 行为摘要
S1 长跑       —  
S2 断网恢复          
S3 设备重启          
S4 网络抖动          
S5 超时          
S6 高丢包          

4.3 diagnostics 采样命令(示例)

# ScanEngine SLA 快照
curl -s http://<host>:8082/api/diagnostics/scan-engine | jq '{
  lag_p95: .scan_lag_p95_ms,
  drift: .scan_drift_avg_ms,
  miss: .scan_miss_deadline_total,
  cb_open: .driver_circuit_open_total,
  warnings: .sla_warnings
}'

# Goroutine / 内存(长跑期间定期执行)
curl -s http://<host>:8082/api/diagnostics/scan-engine | jq '{goroutines: .goroutine_count, heap: .heap_inuse_bytes}'

5. 问题与偏差

ID 场景 现象 根因(初判) 是否阻塞发布 跟踪项
        ☐ 是 ☐ 否  

6. G-Industrial 门禁判定

对照 RELEASE_GATE — G-Industrial 发布判定标准:

6.1 检查项

检查项 标准 本报告结论
协议覆盖 本协议联机/仿真验证完整;长跑时长符合协议分级(24h/72h) ☐ 满足 ☐ 不满足
异常场景 S2–S6 全部通过(单项 FAIL → 本协议 BLOCK) ☐ 满足 ☐ 不满足
长时联机 S1 达到协议要求时长且稳态指标达标 ☐ 满足 ☐ 不满足
量化指标 §4 硬指标无 BLOCK 项(Lag P95、失败率、miss deadline、恢复时间等) ☐ 满足 ☐ 不满足
三件套 设计 + 代码 + 本报告 已归档 ☐ 满足 ☐ 不满足

6.2 裁量级别

级别 触发条件(摘要) 勾选
PASS S1–S6 全过;§4 指标均为 PASS;无阻塞级偏差 ☐
WARN 无 BLOCK;存在可解释偏差(如仅仿真、Lag WARN 档、单次恢复略超上限)且 §5 已跟踪 ☐
BLOCK 任必测场景 FAIL;panic/死锁/跨设备污染;指标 BLOCK 档;CB 不可恢复 ☐

本协议 G-Industrial 结论: ☐ PASS ☐ WARN(注明:________) ☐ BLOCK

§6.2 为 BLOCK 时,§7 不得选择「准予纳入 Release 工业验证范围」。


7. 总体结论

  • 综合结论: ☐ 准予纳入 Release 工业验证范围 ☐ 需复测 ☐ 不予通过
  • 版本发布矩阵对照: 见 RELEASE_GATE — 版本发布判定矩阵(G-Industrial 全部协议 PASS/WARN 签核 → 可纳入 Release)
  • 与 Mock / 单测差异摘要:
  • 发版前建议(如有):

8. 签核

角色 姓名 日期 签名
测试执行      
开发负责人      
产品 / 发布负责人      

附录 — 相关文档

文档 用途
分阶段路线图 — Phase 2 协议范围与必测场景
版本发布门禁 — G-Industrial 发布判定标准
ScanEngine SLA 评估 指标阈值与 Phase 对照
Modbus 联机验证报告(示例) 仿真器联机报告样例

复制本模板为 docs/testing/<协议>_industrial_report_<日期>.md 填写后归档。