소프트웨어를 배포하기 전에 테스트 코드를 작성한다면 예상치 못한 버그와 해당 코드의 사이드 이펙트를 발견하고 이에 대비할 수 있도록 만들어 줍니다.
Jest
메타에서 개발한 자바스크립트 테스트 프레임워크
테스트 코드가 분리되어 실제 개발 코드에 영향을 주지 않음
CRA는 Jest를 테스트 러너로 사용
Jest는 Node 기반 러너
Jest는 DOM 쿼크가 아닌 논리, 구성 요소의 단위 테스트 사용을 위한 러너
단순하고 간결한 API
디렉토리 혹은 파일 이름 규칙 (Jest가 이러한 규칙으로 테스트 파일을 찾음)
__tests__
.test.js
.spec.js
테스트 중인 코드 옆에 테스트 파일을 배치하는 것이 좋음
App.test.js / App.js
왜냐면 import 할 때 상대경로로 같은 뎁스에서 찾기 때문 → 대규모 프로젝트에서 테스트를 더 빨리 찾는 데에 도움이 됨