先给结论:当自动化检测显示正常、而用户仍报告故障时,复查条件不能继续沿用“工具报告的通过状态”,而要改造成“能复现用户故障的最小条件组合”。具体做法是二选一——用户故障可稳定复现时,走“以用户路径为中心的定向复查”;不可稳定复现时,走“扩大样本与条件变量的批量复查”。选错方向的代价是:前者会漏掉环境差异,后者会淹没在噪声里。
两条路成立的条件不同。定向复查成立的前提是:用户能说清操作步骤、看到的现象、发生时间,并且你按同样步骤能再次触发。批量复查成立的前提是:故障偶发、描述模糊、只在部分用户或部分时段出现。
区分依据可以看三点证据:同一用户重复操作是否再次失败;换设备或换网络后是否仍失败;失败是否集中在某个时间段。如果三点都指向“稳定”,选定向;如果任意一点显示“换了条件就正常”,选批量。
动作上,先让报障用户提供一次可对照的操作记录,再决定后续。这个动作的结果会直接影响下一步:能复现,就把复查范围压缩到那一条路径;不能复现,就把变量清单列出来,进入批量对照,而不是反复重跑同一套检测。
自动化工具通常按预设规则扫描,它验证的是“规则覆盖到的点正常”,不等于“用户走的那条路径正常”。定向复查要做的,是把检测对象从“页面是否通过”换成“用户从进入到完成目标这一串动作是否通过”。
假设一个场景:某用户反馈提交表单后没有收到确认。工具检测显示页面正常、脚本无报错。此时定向复查应记录:该用户使用的入口、填写了哪些字段、提交时网络状态、提交后页面停留时长。若按同样条件能再次触发无确认,问题就落在提交到确认之间某个环节,而不是页面本身。
这一步的代价是人力:需要有人按用户路径逐步走一遍,比跑一次全量扫描慢。它的收益是定位精度高,适合故障影响明确、用户愿意配合的情况。
故障不可稳定复现时,反复重跑同一套检测没有意义,因为每次条件相同,结果也相同。此时要构造的是“变量组合对照”:把可能影响结果的条件拆成几组,每组只变一个条件,观察故障是否出现。
动作上,先固定一组基准条件跑通,再逐项替换变量。结果如何影响下一步:如果某个变量替换后故障出现,就把复查范围收窄到该变量;如果所有组合都正常,说明故障可能不在这些条件内,需要回到用户侧收集更细的现场信息,而不是继续扩大扫描量。
无论选哪条路,复查条件都要能被人重复执行。至少要写清:
缺少判定标准时,不同人会对同一现象给出不同结论,复查就失去意义。把判定写清楚,下一次复查才能判断“是同一个问题”还是“新问题”。
有一种情况需要单独说明:工具检测覆盖的是它被配置去检查的范围,用户故障可能发生在该范围之外,比如第三方组件的加载顺序、用户本地缓存状态、或某个未被纳入检测的交互分支。这时“检测正常”只是说明已覆盖部分正常,不能推出整体正常。
因此,复查条件的构造目标不是让检测再次通过,而是让用户故障能或不能被复现。能复现,就修;不能复现且所有对照都正常,就补充现场信息采集,并把这次结论记录下来,供下次同类报障时对照。这样处理,复查才是在缩小不确定性,而不是在重复确认已知结论。