Jest mock

Jest Mocking은 테스트 대상 밖의 의존성만 가짜로 바꾼다

fetch, DB, 파일 시스템처럼 외부 세계를 mock으로 대체해 성공·실패 응답을 통제하고 테스트 대상 로직은 실제로 실행한다.

01 targetfetchUser 같은 테스트 대상

로직 자체는 실제로 실행한다.

02 mockglobal.fetch 또는 dependency mock

네트워크 호출을 가짜 구현으로 바꾼다.

03 result성공과 실패 응답 검증

정상 처리와 예외 처리를 모두 확인한다.

04 reset테스트 간 상태 초기화

mock 호출 기록이 섞이지 않게 한다.

구분의미판단
호출 인자URL, method, body외부 API 사용 계약 확인
비동기 대기await, resolves/rejectsPromise 결과를 안정적으로 검증
과한 모킹통합 문제를 놓침핵심 경계만 가짜로 둔다.

핵심 Mocking은 외부 세계를 지우는 것이 아니라 단위 테스트가 통제할 수 있는 경계를 만드는 작업이다.