단위 테스트에서 중요한 점
2025년 9월 17일
저번 면접에서 단위 테스트 관련한 질문을 받았다.
“단위 테스트를 할 때 어떤 점을 중요하게 생각하세요?” 라는 질문이었는데,
순간 머릿속이 하얘졌다.
테스트 코드를 여러 번 작성해봤지만, 뭘 중요하게 생각하면서 했는지에 대해 고민해본 적은 없었기 때문이다.
이걸 계기로, 그동안 놓치고 있던 테스트의 본질을 다시 정리해보고자 한다.
- 단위 테스트란?
- 말 그대로 “하나의 단위”가 예상한 대로 동작하는지를 검증하는 테스트
- React 컴포넌트라면 하나의 함수 컴포넌트나 훅
- 자바스크립트 함수라면 단일 기능을 하는 함수 하나가 입력 → 출력 흐름이 예상대로 되는지
- 테스트할 떄 중요하게 생각해야 하는 것들
- 신뢰성
- 테스트 결과가 일관되어야한다.
- 어제는 통과하고 오늘은 실패하고 이런 테스트는 오히려 독이 된다.
- 단순한 로직 검증
- 복잡한 로직보다 작고 단순한 단위부터 쪼개서 검증
- 하나의 테스트는 하나의 기능만 확인
- 독립성
- 테스트는 서로 영향을 주면 안됨.
- 모든 테스트는 독립적으로 실행되어야 하며, 외부 상태에 의존하지 않도록 구성
- 실제 사용 시나리오에 기반한 테스트
- 단순히 로직이 맞는지를 넘어서, 실제 유저가 사용할 때 어떤 상황이 생길 수 있는지를 고려
- 가독성 및 유지보수
- 테스트도 읽기 쉽고, 변경하기 쉬워야한다.
- 신뢰성