Jest 신뢰성 루프

단위 테스트는 실패 원인을 한 번에 좁힌다

타입, fixture, mock, matcher를 같은 기준으로 정리하면 테스트 실패가 곧 수정 위치를 가리킵니다.

1 fixture

입력 데이터를 타입으로 고정

테스트용 객체도 실제 DTO와 같은 타입을 쓰고, 경계값은 이름으로 드러냅니다.

2 mock

외부 효과를 한곳에서 제어

시간, 네트워크, 저장소 mock은 테스트마다 초기화해 호출 기록이 섞이지 않게 합니다.

3 assert

결과와 부작용을 분리 검증

반환값은 toEqual, 호출 여부는 toHaveBeenCalledWith로 나눠 봅니다.

이름깨진 규칙이 문장에 보인다.
격리테스트 간 공유 상태가 없다.
타입mock 반환값이 실제 시그니처와 맞다.
속도느린 I/O는 단위 테스트 밖으로 뺀다.