先把“表现不同”拆成可观察的差异:同一组件在A页正常、在B页错位,验收样例不能只截A页的成功状态,而要围绕B页的差异条件构造一组最小对照。缺少完整数据或后台权限时,仍可用浏览器开发者工具、页面源码和手动改参完成这一步,但只能得出“在哪些条件下复现”,不能直接推出根因或修复方案。
很多验收争论源于把“组件不同”和“页面环境不同”混在一起。你手中的资料通常只有两个页面地址和一张截图,最小动作是:确认两个页面调用的是不是同一份组件资源。查看页面源码中该组件的类名、结构层级和资源路径,如果类名一致但外层容器不同,差异更可能来自页面环境;如果类名或结构本身就不同,说明两个页面用的并不是同一版本,验收样例应分别记录。
这一步的结果会直接决定下一步:同一资源才值得做对照样例,不同资源则应先统一版本,否则后续所有对比都没有意义。
不必等完整数据,先把可能影响组件表现的页面条件列成可切换的变量,每次只改一个:
假设一个按钮组件在列表页正常、在详情页变宽,你可以先只改容器宽度,把详情页的容器临时改成与列表页一致。如果按钮恢复正常,说明差异与容器约束有关;如果仍然异常,再检查相邻内容和加载顺序。这个短例子只用于说明比较方法,不代表真实项目结论。
验收样例要写成“给定条件—操作—观察点”的形式,而不是“页面要好看”。例如:
第三步很关键:如果空白页正常、原页面异常,问题更可能来自页面环境;如果空白页也异常,才需要继续查组件自身。这个动作的结果会缩小排查范围,但不能证明某个样式规则就是唯一原因。
没有后台权限时,你仍可以用浏览器开发者工具临时修改元素样式、增删类名、调整容器宽度,并截图记录修改前后的差异。这些操作只作用于当前浏览器会话,刷新即失效,因此适合用来验证假设,不适合当作修复方案。
需要明确的是:某个页面在修改容器宽度后恢复正常,不能单独证明容器宽度就是根因,因为同一改动可能同时改变了换行、溢出和相邻元素间距。请求量、抓取量或某个统计归零也不能单独证明处理正确,它们还可能受缓存、发布节奏或统计口径影响。验收样例的价值在于把“哪个条件变了、哪个观察点变了”固定下来,供后续修复和回归使用。
把上面记录的变量、操作和观察点整理成一页对照表,附上每个页面的截图和临时修改步骤,交给开发或模板维护方。对方修复后,用同一组样例逐条复测:先测空白页,再测原页面,最后测相邻内容变化的情况。只有同一组件在约定条件下表现一致,验收才算有依据;如果条件本身没有固定,复测结果仍然无法比较。