test(e2e): 新增填报流程端到端脚本与测试计划

既有 37 个脚本是按模块切片的(门禁/草稿/提交/审核各一个),有三处固定盲区:
跨步骤的状态轨迹没人断言、切片之间那条缝(驳回后改了字段再交)、以及脚本
docstring 自述与实际断言不符(e2e-m3-draft.py:11 自述的那条断言全文没有)。

docs/11 给出 A~J 十组覆盖矩阵与判据口径(含用 grep 核对实际断言、不读自述的
规程),scripts/e2e-m3-flow.py 只补这三处、其余交给既有脚本,并钉住 F-125 /
F-128 的现状(XFAIL)。verify-all 的脚本数口径随之变成 38。

配套 scripts/dev-reveal-roster-idcard.py:L3-B 走查要在门禁界面手输身份证,
而明文只在建夹具那一刻存在过(库里是 AES 密文 + 脱敏 + HMAC 索引),
此脚本只读解密打印,不入库;用完连同夹具任务一起 --clean。
This commit is contained in:
2026-10-14 15:40:18 +08:00
parent 623e6393d5
commit 4e68d0e5da
4 changed files with 1921 additions and 3 deletions
+4 -3
View File
@@ -24,11 +24,12 @@
```bash
python scripts/verify-all.py # 全部(跳过需要外部前置的,并说明)
python scripts/verify-all.py --with-e2e # 连 37 个脚本的接口断言一起跑(需要后端在跑)
python scripts/verify-all.py --with-e2e # 连 38 个脚本的接口断言一起跑(需要后端在跑)
python scripts/verify-all.py --quick # 只跑不需要任何前置的五项
```
> 脚本数与断言总数会随需求变化(2026-10 需求收敛后是 **37 个脚本**,断言总数以本命令
> 脚本数与断言总数会随需求变化(2026-10 需求收敛后是 **37 个脚本**,加上
> `e2e-m3-flow.py` 后是 **38 个**;断言总数以本命令
> 实际输出为准 —— 别再往文档里抄一个会过期的固定数字)。
退出码:0 = 全过;1 = 有失败(**跳过不算失败**,但会明确列出来)。
@@ -130,7 +131,7 @@ def main():
results.append(("接口断言(E2E)", None, msg))
print(" %s%-14s%s %s" % (YELLOW, "接口断言", RESET, msg))
elif not args.with_e2e:
msg = "**跳过**:要跑就加 `--with-e2e`(37 个脚本、约 10 分钟)"
msg = "**跳过**:要跑就加 `--with-e2e`(38 个脚本、约 10 分钟)"
results.append(("接口断言(E2E)", None, msg))
print(" %s%-14s%s %s" % (YELLOW, "接口断言", RESET, msg))
else: