测试用例失效率高低如何判断:口径、阈值与解读

判断测试用例失效率高低,需要先固定统计口径,再选择对比基线。失效率等于统计周期内被判定为失效的用例执行次数除以同期有效用例执行总次数,分母应剔除阻塞、未执行和重复执行记录。得到数值后,按用例、模块、版本三个维度分层看趋势,与历史基线和同类模块比较,并结合失效原因分布判断问题来自用例设计质量,还是需求变更、环境波动等外部因素。单次计算结果只能作为线索,不能直接下结论。




要点总览(TL;DR)


  • 失效率=统计周期内判定为失效的用例执行次数÷同期有效用例执行总次数,分母需剔除阻塞、未执行和重复执行记录。
  • 判断高低要分层:按用例、模块、版本三个维度汇总,与历史基线、同类模块对比,看偏差幅度和持续时间。
  • 参考区间应基于自身历史数据设定,不套用外部通用达标线;数值偏高时结合失效原因分布判断是用例设计问题还是需求变更、环境或数据问题。
  • 分母为零或样本过小时不下结论;失效率需与用例覆盖率、缺陷发现率结合解读,不宜单独作为绩效依据。


评估目标:判断失效率高低要回答什么


失效率评估的对象是测试用例的设计与内容质量,回答的问题是:在当前版本、当前模块中,用例的预期结果与实际结果出现偏差的比例是否处于可接受范围,偏差主要来自用例本身,还是来自外部条件变化。这个判断服务于用例质量改进,例如识别需要重写、补充或下线的用例,调整评审重点,优化用例维护节奏。


把失效率用于个人绩效考核会扭曲数据。执行人员可能倾向于少报失效、把失效归因于环境,或者回避执行容易失败的用例。评估应面向用例集合和模块,而不是面向某个人。


判断前需要区分两类失效。一类是用例本身的问题,例如预期结果写错、步骤缺失、前置条件不完整、测试数据不具代表性;另一类是需求变更、环境异常、依赖服务不可用、测试数据被污染等外部原因导致的执行结果偏差。只有前者才反映用例设计质量,后者应单独归类,避免混入失效率结论。评估周期和对比对象也要事先明确:是按版本统计,还是按固定时间窗统计;对比的是上一个版本、同类模块,还是团队历史基线。



指标与范围:失效率的分子、分母与统计边界


失效率是一个比例指标,单位为百分比,计算方式如下:


失效率 = 统计周期内判定为失效的用例执行次数 ÷ 同期有效用例执行总次数 × 100%


分子是判定为失效的用例执行次数,按执行记录计数,同一用例在不同环境或不同轮次执行失败,分别计入。分母是有效用例执行总次数,需要剔除三类记录:阻塞(因环境、依赖或前置条件不满足而无法执行)、未执行(计划内但未实际运行)、重复执行(同一用例在同一轮次因重试产生的重复记录,只保留首次有效结果或按约定规则保留一条)。


要素 定义 处理规则
分子 判定为失效的用例执行次数 按执行记录计数,区分用例设计缺陷与外部原因
分母 有效用例执行总次数 剔除阻塞、未执行、重复执行记录
统计维度 用例、模块、版本 三个维度分别汇总,支持交叉查看
时间窗 版本周期或固定时间区间 同一对比组使用相同时间窗
统计粒度 执行轮次 明确按轮次汇总还是按版本累计

三个统计维度承担不同用途。用例维度用于识别长期高频失效的具体用例,判断是否需要重写或下线;模块维度用于比较同类功能区域的用例质量,发现评审薄弱环节;版本维度用于观察趋势,判断质量是在改善还是恶化。时间窗建议与版本节奏对齐,同一组对比数据必须使用相同时间窗和相同统计粒度,否则数值不可比。



数据口径与证据:失效判定标准与取数来源


失效判定标准需要写成可执行的规则:用例实际执行结果与预期结果不一致,且经确认属于用例自身问题,才计入分子。确认环节通常由执行人提交、用例负责人或评审人复核,避免把环境波动误判为用例缺陷。


失效原因建议分为四类,便于后续归因:


  • 用例设计缺陷:预期结果错误、步骤缺失、前置条件不完整、测试数据不合理。
  • 需求变更:用例未随需求更新,预期结果已过时。
  • 环境问题:依赖服务异常、配置错误、网络或数据不可用。
  • 数据问题:测试数据被污染、数据准备脚本失效、数据版本不匹配。

取数来源包括测试执行记录、缺陷单关联和用例评审记录。执行记录提供执行次数与结果;缺陷单关联用于确认失效是否已登记并归类;评审记录用于追溯用例最近一次修改时间和评审结论,帮助判断失效是否与近期变更相关。


缺失值和重复执行需要预先约定处置规则。执行结果缺失的记录不计入分母;同一用例在同一轮次的重试只保留一条有效记录;跨轮次重复执行按轮次分别计入,但需在报表中标注轮次,避免与版本累计口径混用。规则一旦确定,应在整个评估周期内保持一致,变更规则时需同步重算历史数据,保证趋势可比。



计算与评估步骤:从统计到高低判断


完整评估按以下顺序执行:


  1. 按用例、模块、版本三个维度汇总有效执行次数和失效次数,形成基础统计表。
  2. 按公式计算各维度失效率,保留计算过程,确保可复算。
  3. 选择对比基线:历史版本同模块失效率、同类模块当期失效率,或团队近几个版本的移动平均值。
  4. 将当期数值与基线比较,观察偏差幅度和持续时间,判断是偶发波动还是持续偏高。
  5. 结合失效原因分布做归因,看失效集中在用例设计缺陷,还是集中在需求变更、环境或数据问题。
  6. 设定参考区间而非绝对达标线,例如以历史基线上下浮动一定范围作为正常区间,超出区间再触发复查。

参考区间的设定应基于自身历史数据,而不是套用外部通用标准。不同产品、不同模块的用例复杂度差异很大,统一的达标线容易产生误导。区间可以按模块类型分别设定,并随版本迭代定期校准。


判断高低时,数值偏高且失效原因以用例设计缺陷为主,说明用例质量需要改进,优先安排评审和重写;数值偏高但原因集中在需求变更或环境问题,则应先完善变更同步机制和环境保障,再评估用例本身。数值偏低也需要留意,可能意味着用例覆盖不足或执行不够充分,需结合覆盖率和缺陷发现情况一起看。



例子:一个模块失效率的计算与解读


以下为演示情景,数字仅用于说明计算过程。某模块在当前版本共计划执行用例 120 次,其中实际执行 108 次,阻塞 8 次,未执行 4 次;执行记录中有 6 次为同一用例的重试记录。判定为失效的执行记录共 14 次,其中用例设计缺陷 5 次、需求变更 4 次、环境问题 3 次、数据问题 2 次。


先算分母:108 次实际执行减去 6 次重复执行,有效执行次数为 102 次。再算分子:14 次失效记录全部计入。失效率 = 14 ÷ 102 × 100% ≈ 13.7%。


项目 数值 说明
计划执行次数 120 版本计划内用例执行总数
实际执行次数 108 剔除阻塞 8 次、未执行 4 次
重复执行记录 6 同一用例重试,从分母剔除
有效执行次数(分母) 102 108 − 6
失效次数(分子) 14 含设计缺陷 5、需求变更 4、环境 3、数据 2
失效率 约 13.7% 14 ÷ 102

假设该模块上一个版本失效率为 8%,同类模块当期平均为 9%,则 13.7% 明显高于两个对比基准,属于偏高。进一步看原因分布,用例设计缺陷占 5 次,是单一最大来源,说明部分用例的预期结果或步骤存在问题;需求变更 4 次提示用例更新滞后。改进方向可以是:对高频失效用例安排专项评审,建立需求变更后的用例同步检查点,同时把环境和数据问题反馈给对应保障环节。若下一版本失效率回落到 10% 以内且设计缺陷占比下降,可认为改进有效。



解读与限制:避免把失效率当唯一结论


分母为零或样本过小时不下结论。某模块当期有效执行次数只有个位数时,一两次失效就会让比例大幅波动,此时应标注样本不足,等待更多执行数据或合并多个版本统计。分母为零表示没有有效执行,失效率无定义,不能记为 0% 或 100%。


不同模块、不同版本之间的可比性有前提:统计口径一致、时间窗一致、失效判定标准一致、用例集合范围一致。如果某版本大幅调整了用例库,或更换了执行环境,前后数据不宜直接比较,应说明变化并分段观察。


失效率需要与用例覆盖率、缺陷发现率结合解读。失效率低可能来自用例覆盖不足,执行的都是稳定路径;失效率高也可能因为用例设计得更严格,暴露了更多问题。覆盖率反映用例对需求的覆盖程度,缺陷发现率反映测试活动发现问题的能力,三者结合才能判断测试用例的整体质量。


失效率是质量观察指标之一,适合驱动用例改进和评审安排,不适合单独作为团队或个人的全部绩效依据。把失效率与失效原因分布、改进措施完成情况一起看,才能形成完整的评估闭环。在用例执行记录和缺陷关联的管理上,ONES 测试管理可以承载执行结果登记、缺陷单关联和按模块、版本汇总的统计视图,让上述口径在工具中保持一致的取数来源,减少手工汇总带来的口径偏差。



常见问题


同一用例在不同轮次反复失效,失效率里怎么计数?


按执行记录计数,同一用例在不同轮次执行失败分别计入分子,分母也按轮次分别计入有效执行次数。需要避免的是同一轮次内的重试记录:同一用例在同一轮次因重试产生的重复记录,只保留一条有效结果,其余从分母剔除。报表中应标注轮次口径,防止把轮次累计数据与版本累计数据混在一起比较。


模块失效率偏高,但失效原因大多是需求变更,应该先改用例还是先改流程?


先看原因分布。如果失效集中在需求变更,说明用例未随需求同步更新,优先完善变更同步机制,例如在需求变更评审时增加用例影响检查点,再评估用例本身是否需要调整。如果失效集中在用例设计缺陷,才优先安排评审和重写。两类原因混在一起时,分开统计后再决定投入顺序,避免把外部原因算作用例质量问题。


团队没有历史基线,第一次统计失效率怎么判断高低?


可以先积累两到三个版本的连续数据,用移动平均值作为初始参考区间,同时按模块类型分组观察。首期数值主要用于建立基线,不急于下高低结论。也可以在同一版本内做横向比较,看哪些模块明显偏离整体水平,先处理偏离最大的模块。参考区间随数据积累定期校准,不套用外部通用标准。


失效率低是不是就说明用例质量好?


不一定。失效率低可能来自用例覆盖不足,执行的都是稳定路径,也可能因为用例设计得较宽松,未暴露实际问题。判断时需要结合用例覆盖率看需求覆盖程度,结合缺陷发现率看测试活动发现问题的能力。三者一起看,才能区分是用例质量好,还是测试执行不充分。


统计口径中途调整了,历史数据还能直接比较吗?


口径变更后,历史数据需要按新规则重算再比较,否则趋势会失真。如果无法重算,应在报表中标注口径变更时间点,分段观察,不把变更前后的数值直接连成一条趋势线。规则一旦确定,尽量在整个评估周期内保持一致,减少中途调整。

animation hi
animation dot left
animation dot right
animation dot right bottom
avatar circle
WeChat QR Code
长按将二维码保存为图片

售前电话

400-188-1518

文章配图预览