如何根据功能覆盖率安排补充测试

拿到功能覆盖率统计后,真正难的是把百分比转成可执行的补测安排。本文按“统一口径—识别缺口—安排补测—明确分工—复测确认”的顺序展开,适用于已有功能清单和用例记录、需要在一个版本周期内补齐测试的场景。文中示例为演示情景。



要点总览(TL;DR)


  • 补测前先统一功能清单粒度、覆盖判定等级和统计范围,否则覆盖率数字无法对应具体补测动作。
  • 把覆盖率结果拆成未覆盖、弱覆盖、执行未通过三类缺口,再按功能重要度、变更范围和缺陷分布标注风险等级。
  • 补测按缺口类型分类处理:缺用例补设计并评审,缺执行排入计划,弱覆盖补边界与异常场景,并按风险分批推进。
  • 每个补测项要落到负责人、计划时间和完成标志,复测后更新覆盖等级,用覆盖率变化和缺陷回归情况确认补测有效。


先统一功能覆盖率的统计口径


覆盖率数字要能指导补测,前提是统计对象、判定标准和统计范围三者一致。否则同一个80%,可能指“80%的功能点有用例”,也可能指“80%的功能点已执行通过”,对应的补测动作完全不同。安排补测前,测试负责人应先产出一份功能覆盖口径说明,作为后续统计和验收的共同基准。


确定功能清单的来源与粒度


功能清单通常来自需求文档、产品功能结构或版本需求池。粒度建议统一到“功能点”一级,即一个可独立验证的行为单元,例如“订单取消”“优惠券叠加校验”。模块级粒度太粗,容易掩盖模块内部的空白;场景级粒度太细,统计成本高且难以稳定维护。清单确定后应固定版本,补测前后使用同一份清单,保证覆盖率可比。


定义覆盖判定等级


建议把覆盖判定分成可逐级核对的几档,避免“覆盖了”这种模糊表述:


等级 判定标准 说明
未覆盖 无对应用例 功能点没有任何测试设计
已设计 有用例但未执行 用例存在,执行记录为空
已执行 有执行记录,结果未通过 执行过但存在失败或阻塞
基础覆盖 主流程用例执行通过 仅验证正常路径
充分覆盖 主流程、边界、异常均有用例且通过 达到约定的验证深度

等级定义要与项目约定挂钩:有的团队把“充分覆盖”作为关键功能的达标线,把“基础覆盖”作为一般功能的达标线。达标线一旦确定,补测目标就随之明确。


划定统计范围与排除项


统计范围应写明纳入哪些功能、排除哪些功能。本期不测、暂缓上线、依赖外部系统暂不可测的功能,需要在清单中单独标注并说明原因,不能简单从分母中删掉。排除项有明确说明,覆盖率数字才不会被误读;后续这些功能恢复测试时,也能直接回到清单中补入。


如果不同团队、不同版本使用的口径不一致,先对齐再统计。对齐的内容包括功能清单版本、判定等级、统计时间点和排除项,形成书面说明后由测试负责人确认,再进入缺口分析。



从覆盖率结果中识别测试缺口


总覆盖率只说明整体进度,补测需要的是可定位的缺口。做法是把覆盖率结果按功能点展开,逐条判断缺口属于哪一类,再结合风险给出优先级。


区分三类缺口


  • 未覆盖:功能点没有用例。这类缺口需要先补测试设计,工作量集中在用例编写和评审。
  • 弱覆盖:有用例且执行通过,但只验证了主流程,边界、异常、组合场景缺失。这类缺口容易被覆盖率数字掩盖,需要对照判定等级逐项检查验证深度。
  • 执行未通过:有用例但执行失败或阻塞。这类缺口可能是缺陷,也可能是环境或数据问题,需要先定位原因再决定是修复、重测还是补充用例。

按风险标注缺口等级


缺口清单中应为每个功能点标注风险等级,判断依据可以包括:功能对核心业务的影响程度、用户使用频率、本期变更范围、历史缺陷分布。核心交易链路、高频入口、本期改动较大的功能,即使覆盖率数字尚可,也应优先核查验证深度。反过来,低频辅助功能在资源紧张时可以排入后续批次,但要在清单中保留记录。


避免只看总覆盖率


总覆盖率达标不代表关键功能已充分验证。一个常见情况是:大量简单功能覆盖良好,拉高了整体数字,而少数复杂功能仍停留在基础覆盖。识别缺口时应先看关键功能清单的覆盖等级分布,再看整体数字,把“关键功能未达约定等级”作为独立判断条件。


完成这一步后,输出测试缺口清单,字段包括:功能点、所属模块、当前覆盖等级、缺口类型、风险等级、判断依据。这份清单是后续排补测计划的直接输入。



按缺口类型安排补充测试的步骤


缺口清单转成补测计划,核心是把每个缺口落到具体测试项、负责人、计划时间和完成标志上。不同缺口类型的处理动作不同,建议分类安排。


缺用例:补充设计并评审


输入是缺口清单中的未覆盖功能点。动作包括:依据需求和设计文档编写用例,覆盖主流程、关键边界和异常分支;由熟悉该功能的测试或开发人员评审,确认用例能验证需求且预期结果明确。输出是评审通过的用例集,完成标志是用例状态从“未设计”变为“已设计”并关联到对应功能点。


缺执行:排入执行计划


输入是已设计未执行的功能点。动作包括:确认测试环境和测试数据可用,把用例排入本轮执行计划并指定执行人。输出是执行排期和责任人。完成标志是该功能点产生执行记录,结果明确为通过、失败或阻塞;阻塞项需注明原因和解除条件。


弱覆盖:补充边界、异常与组合场景


输入是已达基础覆盖但未达充分覆盖的功能点。动作包括:对照判定等级逐项检查缺失的验证维度,补充边界值、异常输入、状态切换和与其他功能的组合场景。输出是补充用例及执行结果。完成标志是该功能点的覆盖等级提升到约定等级,且新增用例执行通过。


补测优先级与批次划分


排序建议按“风险等级优先、同类缺口合并、依赖关系靠前”的规则:高风险功能先补;同一模块的缺口尽量放在同一批次,减少环境和数据切换成本;存在前置依赖的测试项排在依赖项之后。批次数量按版本剩余时间确定,每批次明确起止时间和验收人。


补测计划表


测试项 缺口类型 优先级 负责人 计划时间 完成标志
订单取消—异常分支 弱覆盖 高 测试工程师A 第1批 补充用例执行通过,等级达充分覆盖
优惠券叠加校验 未覆盖 高 测试工程师B 第1批 用例评审通过并执行
消息通知配置 执行未通过 中 测试工程师A 第2批 缺陷修复后复测通过
历史数据导出 未覆盖 低 测试工程师C 第2批 用例执行并记录结果

补测执行完成后,按功能点复测并更新覆盖等级,复测记录与补测计划逐条对应,便于核对是否有遗漏。



角色分工与交付物


补测安排要落到人,否则容易停留在口头约定。各角色的职责和交接物建议明确如下:


角色 主要职责 交付物
测试负责人 确认覆盖口径,组织缺口分级,排定补测批次和优先级 口径说明、缺口清单、补测计划
测试工程师 补充用例、执行测试、记录结果、更新覆盖等级 补充用例、执行记录、复测记录
开发人员 确认功能行为,修复缺陷,配合定位执行失败原因 缺陷修复记录、功能确认结论
产品人员 确认需求预期,参与风险判断和补测结果验收 需求确认意见、验收结论

交接节点建议设在三处:口径说明确认后进入缺口分析;缺口清单评审后进入补测排期;复测完成后由测试负责人汇总结果,产品人员参与验收。每个节点都有书面产物,补测进展可以按交付物核对,而不依赖会议纪要。


当补测项分散在多个模块、涉及多名执行人时,把缺口清单和补测计划放进统一的工作项与测试管理工具中流转会更省事。ONES 的测试管理支持用例与需求、缺陷的关联,执行记录和覆盖状态可以在同一处查看,补测项的负责人、状态和完成情况也能随工作项更新,便于测试负责人按批次跟踪闭环。



一个补测安排的示例


以下为演示情景,用于说明从覆盖率结果到补测确认的完整过程。


示例背景


某版本共梳理功能点120个,按约定关键功能40个、一般功能80个。统计结果:整体功能覆盖率82%;关键功能中,充分覆盖28个、基础覆盖8个、未覆盖4个;一般功能中,未覆盖6个、执行未通过3个。


缺口识别与分级


按功能点展开后,缺口分为:未覆盖10个(关键4个、一般6个)、弱覆盖8个(均为关键功能,仅达基础覆盖)、执行未通过3个(一般功能)。结合变更范围,关键功能中本期改动较大的2个未覆盖功能点定为高优先级;8个弱覆盖功能点因涉及核心交易链路,整体定为高优先级;一般功能的未覆盖和执行未通过项定为中低优先级。


补测安排与执行


第1批安排高优先级项:2个关键未覆盖功能点补用例并评审,8个弱覆盖功能点补充边界和异常用例;第2批安排其余关键未覆盖项和一般功能缺口。每项指定负责人和完成标志,执行中发现的失败项转入缺陷跟踪,修复后复测。


复测与结论


两批补测完成后复测:关键功能充分覆盖从28个提升到38个,剩余2个因依赖外部系统暂不可测,已在清单中标注原因和后续安排;一般功能未覆盖降至1个。整体功能覆盖率提升至94%,补测期间新发现缺陷5个,均已回归验证。结论是该版本关键功能达到约定覆盖等级,剩余缺口有明确说明,可以进入发布评审。



补测完成后的检查项


补测是否闭环,可以按以下清单逐项核对,每项都应有对应证据:


检查项 通过标准 证据
关键功能覆盖等级 全部达到约定等级,未达标项有书面说明 更新后的覆盖统计表
补测项执行记录 计划中每个测试项都有执行记录和明确结果 执行记录与补测计划对照表
新增缺陷回归 补测期间发现的缺陷均已修复并回归验证 缺陷状态与回归记录
覆盖率更新与对比 覆盖率按同一口径重新统计,并与补测前对比 补测前后覆盖率对比数据
未覆盖项说明 剩余未覆盖项注明原因、影响和后续安排 缺口清单中的备注与排期

五项全部满足,说明补测安排已形成闭环;存在未满足项时,应明确责任人和补充时间,再进入下一轮统计核对。



常见问题


功能覆盖率统计口径不一致时,应该先对齐哪些内容?


建议先对齐四项内容:功能清单的版本和粒度、覆盖判定等级的定义、统计时间点、以及排除项的范围。对齐后形成书面说明并由测试负责人确认,再开始统计和缺口分析。口径不一致时直接比较覆盖率数字没有意义,补测计划也会失去依据。


关键功能覆盖率达标,但整体覆盖率偏低,补测应该先做哪边?


先看关键功能是否达到约定的覆盖等级,再看整体数字。如果关键功能已充分覆盖,整体偏低主要来自一般功能缺口,可以按风险排入后续批次;如果关键功能中有停留在基础覆盖或未覆盖的项,应优先补齐,即使整体覆盖率看起来尚可。判断时把“关键功能未达约定等级”作为独立条件,避免被总量掩盖。


补测中发现的执行失败项,应该算缺口还是算缺陷?


先定位原因再分类。如果失败由产品缺陷导致,转入缺陷跟踪,修复后复测;如果是环境、数据或用例本身的问题,修正后重新执行。两类情况都要在执行记录中写明结论,避免补测计划中的测试项长期停留在“执行未通过”状态而无人跟进。


版本时间紧张,补测批次怎么划分比较现实?


按风险等级排先后:高风险功能进第一批,同模块缺口尽量合并以减少环境和数据切换,有前置依赖的测试项排在依赖项之后。批次数量按剩余时间确定,每批明确起止时间和验收人。低风险缺口可以排入后续版本,但要在缺口清单中保留记录和原因,不能直接删除。


补测完成后,怎样判断补测确实有效?


看三个结果:关键功能是否全部达到约定覆盖等级;补测计划中的每个测试项是否都有执行记录和明确结果;补测期间发现的缺陷是否完成回归验证。同时按同一口径重新统计覆盖率并与补测前对比,剩余未覆盖项要有书面说明和后续安排。几项都满足,补测才算闭环。