先给结论:不要试图复现“所有页面”,而是把组件在页面中的差异拆成可枚举的上下文变量,为每个变量组合构造一个最小验收样例,并明确每个样例只能证明什么、不能证明什么。这样即使你手上只有一份静态页面、一份样式文件或一段组件代码,也能在没有完整站点权限的情况下开始验收。
“同一组件”往往只是名字相同。验收前要先把同一性限定清楚,否则样例之间比较的不是同一个对象。可以按下面三层逐级收窄:
<div>。只要这三层里有一层不同,就不能算“同一组件表现不同”,而应算“两个不同上下文下的组件实例”。把这一点写进验收记录,后续定位方向才不会跑偏。
拿到一个表现异常的页面后,先列出它与正常页面之间所有可见差异,再从中挑出可能影响组件的变量。常见变量包括:
变量不必一次列全,但要保证每个变量都能用“是/否”或“区间”描述。无法这样描述的差异,先记为待确认,不要直接写进样例。
假设你手上只有一份组件代码和一个异常页面截图,没有整站权限。可以执行的最小动作是:新建一个只包含该组件和必要外层容器的静态页面,把变量逐个加上去,观察组件何时开始偏离预期。
具体步骤:
320px,其余与基准一致。这个动作的结果会直接决定下一步:如果单变量样例就能复现异常,问题大概率在该变量对应的样式或数据分支;如果只有组合样例复现,则要检查变量之间的交互,而不是继续单独调整某一个。
最小样例的证明力是有限的,必须写清楚边界,否则容易把局部结论当成全局结论。
如果某个样例在本地正常、在目标页面异常,这只能说明还存在未纳入样例的变量,不能据此判断组件本身有问题。请求量或抓取量归零、控制台无报错,也都不能单独证明处理正确,它们还有缓存命中、请求被拦截、日志级别过滤等合理解释。
验收样例的最终价值,是能转成可重复执行的验收项。建议每条验收项都包含:上下文变量、操作动作、预期结果、失败时的排查方向。例如:
假设示例:在容器宽度为 320px 且传入标题超过 20 个字符时,组件标题应换行且不溢出容器。若失败,先检查标题是否被强制单行截断,再检查容器是否设置了固定高度。这个例子只用于说明比较方法,不代表任何真实项目的结论。
这样写的好处是:即使后续换人验收,也能按同样的变量组合复现,而不是依赖“看起来不对”这种主观描述。对于缺少完整数据或权限的情况,先完成基准样例和单变量样例,就已经能排除一部分原因,并把剩余问题缩小到可继续验证的范围。