16 用例执行怎么设计?分级、排序、并行、失败重跑怎么考虑?
2026/9/8...大约 2 分钟
16|用例执行怎么设计?分级、排序、并行、失败重跑怎么考虑?
开场先讲分级——写用例和运营一套用例体系是两个段位,企业要的是后者。
回答思路
第一步:先讲分级
用例打标签分层:P0 冒烟集(分钟级、提测门禁、发布前必跑)、P1 核心回归、P2 全量(夜间跑)——分级执行让自动化在不同场景出不同的力。
第二步:讲执行顺序的攻守两派
- 默认让每条用例独立、顺序无关(守)
- 顺序敏感的用例(长业务流)显式组织成一条链式用例(攻)
原则是别让顺序成为隐式依赖——CI 里随机顺序跑一遍能暴露耦合用例,这个检测手段说出来很加分。
第三步:并行讲两个前提
pytest-xdist 多进程并行提效,但前提是:
- 用例间数据隔离(各用自造的账号和数据)
- 资源隔离(并行端口冲突、截图目录分进程)
没做隔离就开并行会制造一片 flaky——先隔离后并行的顺序不能反。
第四步:失败重跑讲克制
rerunfailures 只重跑标记次数;重跑通过的要标记为 flaky 单独统计。重跑是兜底不是遮羞布——flaky 用例比率要进度量报表持续治理,直接讲「重跑了事」是减分答案。
收尾:讲执行结果的分发
不同级别执行结果推给不同的人:冒烟失败推全员、夜间全量失败次日汇总、趋势报告周报化——让执行结果流动起来,而不是躺在报告文件里。
考察重点
| 维度 | 说明 |
|---|---|
| 企业动机 | 写用例和运营一套用例体系是两个段位。尤其并行和 flaky 治理,直接决定 CI 流水线能不能被团队信任 |
| 过线标准 | 分级 + 并行的隔离前提,两条硬认知 |
| 区分度 | 讲「随机顺序检测耦合」「flaky 比率进报表」的是运营过流水线的人 |
| 加分项 | 重跑克制的态度,避免把重跑当万能药 |
| 减分项 | 上来就开全量并行,不知道隔离是前提 |
来源
整理自知识星球帖《面试情报 03|自动化测试 20 题》,返回题库。