Snapshot Testing (Feat. Jest)
특정 컴포넌트에 대한 스냅샷을 생성하여, 이전 컴퍼넌트와 달라진 부분이 있는지 체크한다. API JSON 에 대해서도 적용할 수 있다.
jest 설치 :
yarn add jest --dev
.babelrc 수정
.elintrc.json 수정
루트에
__tests__
폴더 생성 (Airbnb rule 을 적용중인 경우만 해당)__tests__
안에[컴포넌트명].spec.jsx
생성아래 코드 입력
test 실행 :
NODE_ENV=test ./node_modules/.bin/jest
최초 실행시에는 스냅샷만 저장하므로 테스트가 성공한다. 아래 경로에 스냅샷이 생성되었다.
Search.jsx 컴포넌트를 수정한 다음 다시 테스트를 해보자.
test 실행 :
NODE_ENV=test ./node_modules/.bin/jest
svideo 를 video 로 변경하였다. 이전 스냅샷과 다르므로 테스트가 실패했다.
만약 현재 상태로 스냅샷을 변경하려면 아래와 같이 해보자.
스냅샷이 갱신되며, -u 를 제외하고 다시 테스트 해보면 성공하는 것을 볼 수 있다.
참고
Last updated