07 自动化覆盖率怎么度量?覆盖率高就一定好吗?
2026/9/23...大约 2 分钟
07|自动化覆盖率怎么度量?覆盖率高就一定好吗?
开场先讲覆盖率的多种口径——先讲清量的是什么,再谈好坏。
回答思路
第一步:三种口径
| 口径 | 量什么 |
|---|---|
| 需求维度 | 自动化用例覆盖的需求点比例(手工时代的口径) |
| 代码维度 | 自动化执行覆盖到的代码行或分支比例(jacoco 这类工具量) |
| 场景维度 | 核心业务场景里自动化化的比例 |
第二步:讲覆盖率和有效性的区别(本题题眼)
- 覆盖率回答「自动化碰到了多少」
- 有效性回答「自动化真能拦住问题吗」
一条只断言状态码的用例和一条全量断言加数据校验的用例,覆盖率口径下等价、拦截能力天差地别——高覆盖率低有效性是常见的假繁荣。
第三步:给有效性的度量办法(讲出两个就是深水区)
- 变异测试的思路:往代码里注入缺陷看自动化能不能杀掉——杀死率就是有效性
- 逃逸率和自动化覆盖的交叉分析:覆盖率涨逃逸率不降,说明增量覆盖是无效覆盖
- 用例的 bug 发现历史:多少用例曾经红过——从没红过的用例可疑
第四步:讲覆盖率的合理使用
它是「投入方向」的导航(哪些核心场景还没自动化),不是「质量成绩」的证明——当改进工具是良药,当考核指标是毒药(为凑覆盖率把不该自动化的长尾也自动化了,维护成本爆炸)。
收尾:给目标务实性
核心场景全覆盖 + 长尾选择性覆盖是健康状态——盲目追求全量覆盖率是数字游戏,覆盖的边际价值递减要承认。
考察重点
| 维度 | 说明 |
|---|---|
| 企业动机 | 自动化是企业测试投入的大头,覆盖率是这笔投入的账本——企业被「覆盖率 90% 但线上照样漏」的假繁荣坑过 |
| 过线标准 | 多口径认知 + 覆盖不等于有效的辨析 |
| 区分度 | 讲变异测试、讲覆盖率和逃逸率交叉验证的是度量专家级 |
| 加分项 | 覆盖率当导航不当成绩的定位表述 |
| 减分项 | 「覆盖率越高越好,目标 100%」——边际效益和成本的认知缺失 |
来源
整理自知识星球帖《面试情报 07|研发效能度量与提升 20 题》,返回题库。