E2E 用例评审控制台
无头脚本通过不等于交付完成;只有人真正看过交互,验收才算成立。
绝大多数 AI 编程框架最危险的盲区就是“无头脚本(Headless Test)通过即交付”。大模型很容易写出满足断言但布局崩塌、组件重叠、动画撕裂的“假代码”。
Atlas 随包自带了一个纯 Python 标准库编写的本地轻量级可视化服务 —— E2E 用例评审控制台。
界面实机展示
bash
启动命令:atlas console # (或直接执行 python3 .atlas/scripts/e2e_console.py)
访问地址:http://127.0.0.1:4190
人机协同:让脚本做机械操作,让人专注体验
除了凭借精准的影响面裁剪带来更快的执行速度与更省的 Token 开销之外,Atlas 最具价值的突破在于:它真正增进了人对项目全局的理解,让人重新掌握系统的主导权。
1. 不仅更快、更省 Token,而且更懂项目
- 很多纯黑盒方案虽然追求执行指标,但往往导致代码越写越多,人却越来越看不懂系统长什么样;
- Atlas 在保持极致的增量速度与 Token 节省的同时,通过 PRD 层的结构化验收准则(AC) 与 E2E 层的真实用例分片,把系统逻辑重构为人类一眼就能看懂的业务地图与交互旅程。人对代码始终拥有绝对的理解与把控力。
2. 替代人手机械连点,把人的精力还给“体感”
- 传统手工验收时,开发者要被迫人肉去做极其枯燥的机械点击、重复填表单、点下拉框,点到最后往往大脑麻木、视而不见;
- 控制台的本质是:让脚本替代你的人手去做枯燥的机械操作,但在你的眼皮底下慢动作(
500ms Slow-Mo)完整弹窗回放。
3. 当场捕获交互别扭感(别不别扭,看着它点当场立改)
- 当人类从繁重的“手动点鼠标”中被解放出来后,大脑的全部带宽都能用来敏锐审视真实用户体验:
- “这个弹窗关闭的节奏是不是太生硬了?”
- “页面跳转后那个卡片为什么会有轻微的布局跳动?”
- “这个错误提示文案给得是不是太反人类?”
- 一条用例慢速跑完,交互顺不顺畅、别不别扭当场就能看到,当场就能让 Agent 顺手改掉!
4. 冒烟先行(Smoke First):几分钟看清产品骨架是否合理
- 实战推荐节奏:新功能实现后,在控制台先过滤并快速过一遍 smoke(冒烟用例);
- 仅仅花两三分钟,就能立刻感知整个核心流程顺不顺、产品交互大局到底合不合理。核心旅程确认对味后,再深入去跑边界异常用例。
5. 人类确认通过,后续永久沉淀为黑盒无头回归
- 只要当前用例交互顺畅、业务预期达标,人类在控制台打勾并通过;
- 点击全局「提交」落盘到评审账本后,这条用例就沉淀为永久资产。在日后的日常 CI、提交门禁或迭代中,它就可以放心地交给机器在后台以纯黑盒方式高速回归,再也不需要人肉重复点一遍!
控制台底层机制与严肃门禁
1. 真实应用有头慢动作回放 (Headed Slow-Mo)
- 点击单条用例右侧的**「执行」**按钮,立刻弹起真实的 Playwright 浏览器窗口;
- 自带慢动作滑块(默认
500ms慢速步进):人类可以清晰、从容地看清模型的每一次点击、文本输入、下拉选单和弹窗跳转; - 按钮是否跳动、样式是否错位、文案是否符合业务直觉,肉眼一目了然。
2. “执行通过”才解锁“人工 Review”(严肃门禁)
- 控制台设立了极其严肃的状态机锁:只有当底层 Playwright 脚本在真实应用中跑出绿色通过态,右侧的「人工 Review 通过」勾选框才会真正解锁;
- 杜绝脚本红灯但人类盲目打勾放行;
- 也杜绝脚本绿灯但界面视觉崩塌的伪通过。
3. 单并发隔离与故障现场保留
- 单并发控制(Concurrency = 1):同一时间严格只跑一条用例,其余执行按钮临时置灰,防止多用例并行读写数据库导致数据污染;
- 保留现场:单条跑完后不自动关闭浏览器窗口,留足时间给人类检查当前 DOM 现场;
- 底面板日志:执行失败时,点击「输出」按钮即可在底面板直观查阅完整的断言错误回溯。
4. 单写者架构与提交落盘 (Append-Only Ledger)
- 本地状态保护:页面上的每一次执行状态与人工勾选,先且仅保存在浏览器本地(
localStorage,刷新页面不丢失); - 原子落盘:只有人类审视全盘无误、点击右上角全局**「提交」**按钮时,才一次性原子写入两处:
- 向
product/e2e/reviews/console/events.jsonl追加一条不可篡改的事件快照; - 派生人读的
product/e2e/reviews/console/ledger.md评审账本; - 原子回写
product/e2e/e2e-index.md索引表中的用例状态列(red → green)。
- 向
