加载中...

测试金字塔(Test Pyramid)是描述自动化测试合理配比的经验模型,由 Mike Cohn 在《Scrum 敏捷软件开发》中提出:金字塔底层是数量最多、运行最快、成本最低的单元测试;中层是数量适中的集成测试或服务测试;顶层是数量最少、最慢、最脆弱但最接近真实用户的端到端(UI)测试。
测试层级越高,反馈越慢、定位问题越难、维护成本越高、越容易间歇性失败(flaky)。因此应把大部分验证下沉到低层,让每个缺陷尽量在最便宜的层级被捕获,高层测试只覆盖关键业务路径。
与之相对的"冰淇淋筒"反模式是:端到端测试和手工测试占大头,单元测试稀少,结果是回归缓慢、构建不稳定。
微服务时代衍生出蜂巢、奖杯(Testing Trophy)等变体模型,主张以集成层为重心;契约测试也被引入以替代部分跨服务的端到端测试。各模型的共同精神是:有意识地设计测试组合,而非放任高层测试无限膨胀。

登录 后参与讨论
暂无讨论,来发表第一条评论吧