实验 11 · 33 分钟 · 入门
从“能跑”到“能交付”
用一套可复现的验收流程,把“在我电脑能跑”推进到“可以交付”。
完成后你能
本课目标
- 检查响应式、键盘与内容压力
- 记录问题、证据和修复结果
- 避免重构式修 bug
开始前
准备这些
- 选择第 9 或第 10 课的互动作品
- 新建 11-delivery-qa 文件夹
- 准备桌面 1440px 与手机 390px 的测试环境
01 · 建立验收矩阵
“看起来没问题”不是验收。把设备和状态交叉组合,至少检查:桌面/手机 × 空/有数据/错误。每个格子都留下通过或问题证据。
示例
视口:1440×900、390×844
输入:空值、最长合法值、非法值
状态:空列表、有数据、全部完成、刚清空
操作:鼠标、仅键盘、刷新恢复
偏好:减少动态效果- 为每个组合记录通过、失败或不适用。
- 失败项写可复现步骤,不写“偶尔坏”。
- 先修阻断任务的问题,再修视觉细节。
02 · 让 Agent 做静态审查
先生成带证据的报告,再决定修什么。审查和修改分两轮,能保留你对改动范围的控制。
复制给 Agent
请审查我要交付的 HTML 文件,并在 11-delivery-qa/qa-report.html 生成验收报告。先不要修改源文件。
检查:HTML 标题层级、表单 label、按钮类型、键盘焦点、ARIA 状态、横向溢出风险、固定宽度、超长文本、空状态、错误状态、localStorage 解析失败、prefers-reduced-motion。
报告每项包含:严重度、证据(代码位置或复现步骤)、建议的最小修复、验证方法。不能仅写“符合最佳实践”。03 · 手工跑关键路径
静态审查找不到所有问题。关闭鼠标,完整走一遍添加任务、勾选、切换主题、清空与撤销。
- 从地址栏按 Tab,确认焦点依次到达所有控件。
- 在 390px 下输入 50 个中文字符,确认页面不横向溢出。
- 清除 localStorage 中该页面的数据,刷新并检查空状态。
- 手工写入损坏的 JSON,确认页面能恢复而不是白屏。
- 开启减少动态效果,检查不必要动画是否停止。
04 · 按证据做最小修复
一次修一个高优先级问题,每次都复跑它的验证步骤。不要借修 bug 重新设计整页。
- 保存修复前后的同视口截图。
- 将通过证据补回 qa-report.html。
- 确认报告中没有把未测试项写成通过。
复制给 Agent
请只修复 qa-report.html 中标为“阻断”或“高”的问题。每次修改后:
1. 写出修改的文件和具体位置;
2. 复述原始复现步骤;
3. 给出现在的验证结果;
4. 说明没有修改哪些功能。
不要顺便重构或改变视觉风格。不要跳过
完成检查
逐项在真实页面中验证。勾选状态只保存在这台设备的浏览器中。
0 / 6 已完成
这一课完成了。产物留下来,下一课会继续用到。
常见错误
卡住时先看这里
- Agent 说通过就算通过
- 要求代码证据或可复现的浏览器步骤。
- 测试只用正常数据
- 加入空、长、非法、损坏和重复操作。
- 修复时顺便重构
- 限定最小改动,并声明未触碰的功能。
可选加练
再多走一步
请一位没有参与制作的人按你的报告复测,记录他无法理解的步骤。