测试金字塔是一个用于组织测试套件的模型——在底部有许多快速单元测试,中间有较少的集成测试,顶部只有几个端到端测试。它为均衡、高效的测试策略提供指导。
金字塔
text
/\
/E2E\ ← FEW end-to-end tests (slow, broad, brittle, expensive)
/------\
/ INTEG. \ ← SOME integration tests (medium speed/scope)
/----------\
/ UNIT \ ← MANY unit tests (fast, focused, cheap) — the BASE
/--------------\
text
BASE (most): UNIT tests — fast, isolated, cheap → run lots of them
MIDDLE: INTEGRATION tests — components together → fewer (slower, more setup)
TOP (fewest): E2E tests — whole app, user flows → few (slow, brittle, expensive)
