**테스트 피라미드(testing pyramid)**는 테스트 스위트를 구조화하는 모델로, 바닥에 빠른 단위 테스트를 많이, 중간에 integration test를 더 적게, 꼭대기에 end-to-end 테스트를 소수 두는 것입니다. 균형 잡히고 효율적인 테스팅 전략을 안내합니다.
피라미드
/\
/E2E\ ← end-to-end 테스트 소수 (느림, 넓음, 깨지기 쉬움, 비쌈)
/------\
/ INTEG. \ ← integration test 일부 (중간 속도/범위)
/----------\
/ UNIT \ ← unit 테스트 다수 (빠름, 집중적, 저렴) — 바닥
/--------------\
바닥(가장 많음): UNIT 테스트 — 빠르고, 격리되고, 저렴 → 많이 실행
중간: INTEGRATION 테스트 — 컴포넌트를 함께 → 더 적게 (느리고, 설정이 더 많음)
꼭대기(가장 적음): E2E 테스트 — 앱 전체, 사용자 흐름 → 소수 (느리고, 깨지기 쉽고, 비쌈)
