先固定组件本身的输入与输出,再按页面差异拆出变量,最后用成对样例验证。若只在单个页面通过,就不能把结论外推到全站,验收样例必须覆盖不同模板、不同数据长度和不同上下文。
同一个组件在A页面正常、在B页面异常,常见解释有两类。第一类是组件自身对输入敏感:数据为空、字段过长、图片比例不同、语言或编码差异,都会让组件进入不同分支。第二类是页面环境改变了组件表现:父容器宽度、主题样式、脚本加载顺序、同页多个实例、弹窗或折叠区域内的布局约束,都可能覆盖组件默认行为。
区分这两类解释,不能只看截图。更可靠的做法是固定组件输入,只改变页面位置。假设一个产品卡片组件在列表页显示正常,在详情页侧栏出现文字截断:先复制同一组标题、同一张缩略图、同一段描述,分别放入列表页容器和侧栏容器。如果侧栏仍截断,而列表页正常,环境因素更可能;如果两个位置都截断,输入或组件内部逻辑更可能。
不要写“页面显示正常”这种笼统验收项。每个样例至少包含:页面模板、组件实例数量、输入数据特征、容器约束、预期结果、判定证据。成对构造的意思是,一次只改变一个变量,保留前一组的其他条件不变。
每组样例都要写明判定证据。截图只能证明某一时刻的视觉结果,不能单独证明组件逻辑正确。更稳的证据是:输入数据、容器宽度、组件根节点尺寸、关键子节点是否溢出,以及异常是否可复现。若这些证据无法取得,至少保留可重复的操作路径和输入值。
假设某企业站的产品卡片组件在列表页正常,在详情页相关推荐区域出现按钮错位。先取列表页正常样例,记录卡片宽度、标题长度、按钮文案和容器可用宽度。再把同一卡片放入详情页相关推荐容器,其他输入不变。若错位只在详情页出现,下一步检查该容器是否被父级样式限制宽度,或是否在异步插入后未触发尺寸更新。若把卡片放回列表页仍正常,而换一个更长标题后在列表页也错位,则标题长度和容器宽度共同作用,验收样例要同时覆盖“短标题+窄容器”和“长标题+宽容器”,不能只补一个。
这个动作的结果会直接影响下一步:如果环境因素被排除,就回到组件输入边界;如果环境因素成立,就不要继续改组件内部逻辑,而应把页面容器约束写成验收条件。
个别样本成立不等于全站成立。不能照搬的边界包括:只在固定数据长度下通过、只在桌面宽度通过、只在单实例通过、只在同步渲染通过、只在默认主题通过。把这些边界写进验收记录,比增加更多重复截图更有用。
如果站点有多个模板或多个内容类型,验收样例至少覆盖每个模板一次,并对最窄容器、最长字段、最多实例各覆盖一次。若某项无法覆盖,要写明未覆盖原因和潜在影响,而不是默认通过。
执行后,若某组件只在单一模板通过,应把它标记为“局部通过”,而不是“全站通过”。下一步优先验证最窄容器和最长输入,因为这两类条件最容易暴露被单页样本掩盖的问题。