본문 바로가기

개발기술/테스트, 인프라

테스트의 종류와 선택

일반적으로는 단위 테스트, 통합 테스트, API 테스트 모두 시행하는 것이 이상적인 테스트 전략입니다.

 

 

왜 세 가지를 모두 사용하는가?


 

테스트 종류 목적 어떤 걸 확인하나?
단위 테스트 개별 클래스나 메서드의 로직이 정확한지 검증 비즈니스 로직, 조건 분기, 예외처리 등
통합 테스트 여러 빈(서비스 ↔ 레포지토리 ↔ 설정)이 잘 연결됐는지 검증 Bean 주입, 설정값, 실제 외부 의존성과의 통합 작동
API 테스트 외부 사용자의 시각에서 API가 제대로 동작하는지 검증 요청/응답 포맷, HTTP 상태코드, 검증 오류 등

 

 

이상적인 테스트 방향

 

규모  / 상황 테스트 전략 현실화
1인 개발 / 사이드 프로젝트 단위 + API 테스트 위주. 통합 테스트는 최소한으로.
스타트업 / MVP 단계 빠른 개발을 위해 단위 or API 위주, 통합은 핵심만 테스트
중대형 서비스 / 협업 환경 단위 + 통합 + API 테스트 전체 적용 (테스트 피라미드 구조)

 

현실적인 테스트

규모  / 상황 실제 테스트 흐름 (현실 기반)
1인 개발 / 사이드 👉 API 테스트 위주
수동 확인 + 일부 단위 테스트
통합 테스트는 거의 없음
스타트업 / MVP 단계 👉 API + 일부 단위 테스트
피쳐 중심 개발, 빠른 배포
통합 테스트는 시간 될 때 작성
중대형 서비스 / 협업 👉 단위 + 통합 + API 테스트 병행
기능 리팩토링 대비 필요
API 테스트는 계약검증용

 

실전에서의 팁

  • 단위 테스트는 빠르게 로직 검증, CI 속도 빠름
  • 통합 테스트는 안정성 확보용 → 주요 기능만
  • API 테스트는 계약서처럼 사용 → 프론트와 협업 시 강력함

'개발기술 > 테스트, 인프라' 카테고리의 다른 글