走查清单 | 验证与迭代 | 做产品
走查清单
功能、体验、数据、安全,上线前逐条过。清单是给赶工的那个自己准备的,那时候你只会点自己最熟的那条路。
你会遇到的现象
-
上线一小时内用户就发现了一个你从来没点过的按钮会白屏
-
发完才想起来空态没做,新用户进去看到的是一片空白
-
自测一直用同一个老账号,全新用户的第一步早就跑不通了
-
回滚了两次,两次的原因都在上一次说过「下次记得看」
四类,一份清单
把清单固定成四类,顺序也固定:功能 → 体验 → 数据 → 安全。前面塌了后面不用看,最后一类一票否决。
类别逐条检查怎么算过
功能 主流程从头到尾走通;每个异步位置的四态都在;失败之后能重试且不丢已填内容;超长内容和零条数据各跑一遍 不用你解释就能走完
体验 用全新账号完整走一次;窄屏看一遍;提示语说清了发生什么和下一步;危险操作可撤销;没有「测试」「TODO」这类占位文案漏在线上 陌生人不问你也知道该干什么
数据 关键事件都上报了;失败事件带原因;属性里有能关联的 id;看板或查询语句已经准备好 上线第一天就能看到曲线
安全 密钥和令牌不在前端代码里;换个账号试访问别人的数据;权限判断后端也做了一遍;用户输入在展示前做了转义 试着越权,试不成功
清单要短到你愿意每次都过。二十条以内、十五分钟能走完,才有可能变成习惯;写到五十条,第三次就没人看了。
怎么走这一遍
-
**换一个全新账号。**老账号有历史数据,天然绕开了空态和首次引导,而这两个地方恰好是新用户最先看到的。
-
**把窗口拉窄一次。**不需要真机,把浏览器拉到手机宽度,大部分布局问题会立刻暴露。
-
**把网络调慢一次。**浏览器开发者工具里限速到 3G,加载态和超时处理有没有做,一眼就看出来。
-
**走一次「错的路」。**故意填错、故意留空、故意连点两次提交,看它怎么回应。
-
**边走边记,不要边走边改。**发现问题先记下来,走完再统一排。中途开始改代码,这一遍就废了。
顺序也固定:前面塌了,后面不用看
功能 主流程走通 · 四态齐全 不用你解释就能走完
体验 全新账号走一次 · 窄屏 陌生人不问也知道干什么
数据 关键事件都上报了 上线第一天就能看到曲线
安全 一票否决 试着越权, 试不成功
走这一遍的四个动作
换一个全新账号
把窗口拉窄
把网络调慢
走一次错的路
清单要短到你愿意每次都过:二十条以内、十五分钟能走完,才有可能变成习惯。写到五十条,第三次就没人看了。 边走边记,不要边走边改。中途开始改代码,这一遍就废了。 老账号有历史数据,天然绕开了空态和首次引导——而这两处恰好是新用户最先看到的。
清单是给赶工的那个自己准备的。那时候你只会点自己最熟的那条路,而用户一小时内就会发现你从来没点过的那个按钮会白屏。
哪些不过就不发
清单不是每条都同等重要。分两档,判断只需要几秒:
阻塞项 · 不过不发
· 会丢数据、会扣错钱 · 能看到别人的数据 · 密钥泄漏在前端 · 主流程走不通 · 出错之后没有任何提示
记进待办 · 可以先发
· 窄屏下某个间距偏挤 · 空态的插画还没画 · 文案还能更顺一点 · 加载态是转圈不是骨架屏 · 埋点少了一个次要事件
左边这五类的共同点:出了事用户会受损失,而且事后补不回来。右边的共同点:难看,但可以下一版再说。
交给 AI 先自查
如果代码是 AI 写的,让它先照着清单自查一遍,你再走一遍。它擅长发现「这里没处理错误分支」这类结构性遗漏,不擅长判断「这个提示语用户看不看得懂」。
复制 PROMPT · 上线前自查 对照下面的清单检查刚才这个功能,逐条给结论,不要改代码。
功能
- 主流程能否走通;每个异步位置是否都有空、加载、出错、正常四态
- 失败之后能否重试,已填内容会不会丢
- 零条数据和超长内容各会怎样
体验
- 全新用户第一次进来看到什么
- 窄屏下布局是否还成立
- 出错时的提示是否说清了发生什么、下一步做什么
数据
- 关键事件是否已上报,失败是否带原因
安全
- 是否有密钥硬编码在前端
- 权限判断是否只做在前端
- 用户输入展示前是否转义
输出格式:每条给「过 / 不过 / 不确定」,不过的给出文件和行号。 不确定的单独列出来,我来人工看。
这份清单适合直接沉淀进项目的约束文件,让它每次交付前自己跑一遍,不用你每次重复(见约束沉淀)。
接着看
列状态清单 功能那一类里最常漏的一项,展开就是一份状态清单。
能用、好用、有人用 走查清单覆盖的是第一层。后两层要找人、要看数据。
先埋点后上线 清单里「数据」那一类的前置条件。
