테스트 / 자동화
단위 테스트(Unit Test)
단위 테스트는 함수나 컴포넌트 같은 작은 코드 조각을 독립적으로 실행해 입력에 맞는 결과가 나오는지 확인합니다.
쉬운 설명
단위 테스트는 함수나 컴포넌트 같은 작은 코드 조각을 독립적으로 실행해 입력에 맞는 결과가 나오는지 확인합니다.
배경과 쓰임까지 이해하기
조금 더 자세히
단위 테스트(Unit Test)는 함수나 컴포넌트처럼 작은 코드 조각 하나가 기대대로 작동하는지 확인하는 테스트입니다. 입력값을 주고 예상한 결과가 나오는지 빠르게 검사하며, 다른 서버나 데이터베이스에는 가능한 한 의존하지 않게 만듭니다.
실행이 빠르고 실패 원인을 찾기 쉬워 코드를 수정하거나 리팩터링할 때 안전망이 됩니다. 한마디로, 단위 테스트는 프로그램의 작은 부품을 하나씩 검사하는 테스트입니다.
실제로는 이렇게 만나요
가격과 할인율을 입력받는 함수에 여러 값을 넣어 정상 가격, 0원, 잘못된 할인율에서 기대한 결과가 나오는지 확인합니다.
- 이런 거 할 때 나와요 작은 로직의 오류를 실행 직후 발견하고 실패 원인을 빠르게 좁힐 수 있습니다. 리팩터링할 때 기존 동작을 지키는 안전망 역할도 합니다.
- 이렇게 생겼어요 단위 테스트(Unit Test)은(는) Integration Test, Test Code, TDD 같은 주변 개념과 함께 문서, 설정 화면, 오류 메시지에서 자주 보입니다.
- 나오는 화면 예시 테스트 / 자동화 작업을 하다가 Integration Test, Test Code, TDD를 확인하는 화면
단위 테스트가 많으면 E2E 테스트는 필요 없나요?
필요합니다. 단위 테스트는 개별 로직을 잘 검증하지만 화면, API, 데이터베이스가 실제로 연결되는 전체 흐름까지 보장하지는 않습니다.
헷갈리기 쉬운 점
내부 구현 방식만 지나치게 검사하면 리팩터링 때 불필요하게 테스트가 깨집니다. 사용자가 관찰할 수 있는 입력과 결과 중심으로 작성하세요.
왜 알아두면 좋을까요?
작은 로직의 오류를 실행 직후 발견하고 실패 원인을 빠르게 좁힐 수 있습니다. 리팩터링할 때 기존 동작을 지키는 안전망 역할도 합니다.
Checklist
실제로 볼 때 확인할 것
- 01
한 테스트에서 한 동작을 검증한다
- 02
빠르고 독립적으로 반복 실행되게 한다
- 03
정상·경계·오류 값을 포함한다
- 04
구현 세부사항보다 동작을 검증한다