전체 목록
테스트Medium#245

테스트 피라미드는 어떤 기준으로 테스트 비중을 제안하나요?

#테스트#TestPyramid#전략#품질

답변 포인트

속도, 비용, 신뢰도의 균형를 기준으로 정의, 장점, 한계, 예시를 함께 설명해보세요.

정답 및 해설

빠른 요약

테스트 피라미드는 빠른 단위 테스트를 많이, 통합 테스트를 중간, 느린 E2E 테스트를 적게 두는 균형을 제안합니다. 제품 리스크에 맞게 조정해야 합니다.

테스트 피라미드는 단위 테스트를 가장 많이, 통합 테스트를 그보다 적게, E2E 테스트를 가장 적게 두자는 경험적 가이드입니다. 테스트의 속도, 비용, 신뢰 범위를 균형 있게 가져가려는 모델입니다.

구조

Text
        E2E        , ,   
      Integration  / 
    Unit           , ,  

왜 피라미드인가요?

단위 테스트는 빠르고 실패 원인을 찾기 쉽기 때문에 많은 케이스를 커버하기 좋습니다. E2E는 실제 사용자 흐름을 검증하지만 느리고 flaky할 가능성이 높아 핵심 경로 위주로 제한하는 것이 좋습니다.

현실적인 변형

프론트엔드에서는 컴포넌트 테스트 비중이 커질 수 있고, 마이크로서비스에서는 contract test가 중간 계층을 보완합니다. 중요한 것은 모양 자체가 아니라 “같은 버그를 가장 싼 테스트에서 잡는다”는 원칙입니다.

실무 적용

  • 순수 계산/도메인 규칙: 단위 테스트
  • DB transaction, serializer, API 경계: 통합 테스트
  • 로그인, 결제, 가입 같은 critical path: E2E
  • 버그가 발생한 계층에 가장 가까운 테스트를 추가합니다.

면접 답변 포인트

테스트 피라미드는 빠르고 안정적인 낮은 계층 테스트를 많이 두고, 느린 E2E는 핵심 흐름에 집중하자는 전략입니다. 제품 특성에 맞게 변형 가능하다고 덧붙이면 좋습니다.

관련 질문

같은 카테고리/태그 기준