analogcoding

jest 란 ? , jest 설치 , testing code 읽어보기 본문

Be well coding/Learn more

jest 란 ? , jest 설치 , testing code 읽어보기

be well 2019. 9. 18. 13:29

What is Jest ?

Jest 는 코드가 제대로 동작하는 지 확인하는 test case 를 만드는 '테스팅 프레임워크' 입니다.

Why use Jest ?

lint 가 코드 스타일에 rule 을 정하는 것이라면 코드가 올바른 기능을 하는 지 체크할 수 있습니다.

이를 통해서 보다 안정적이고 제대로 동작하는 코드를 작성할 수 있습니다.

How to Start ?

package.json 파일을 만들고 Jest 라이브러리를 개발 의존성으로 설치합니다.

yarn 과 npm 모두 간단하게 설치 가능합니다.

yarn add --dev jest
npm install --save-dev jest

Tip* ( -devpackage.json 안에 dependencies 가 닌 devDependencies 에 저장됩니다. )

Tip* ( devDependencies 는 개발 시 사용하는 패키지를 설치하는 곳으로 배포 시에는 포함되지 않습니다. )

test 커맨드 지정하기.

package.json 파일을 열고 test script 를 jest로 수정합니다.

    "scripts": {
      "test": "jest"
    }

설정을 마쳤다면 터미널에 npm test ( 혹은 yarn ) 라고 입력하면 jest 커맨드를 실행할 수 있습니다.

test 코드와 파라미터는 다음과 같이 이루어져 있습니다.

    test(' test 할 코드에 대한 설명 ', () => {
    // it 또한 test 와 같습니다.
      expect(' test 할 코드 ').toXxx(' test 결과 ');
    });

test 커맨드 지정하기.

 

package.json 파일을 열고 test script 를 jest로 수정합니다.

 

설정을 마쳤다면 터미널에 npm test ( 혹은 yarn ) 를

 입력하면 jest 커맨드를 실행할 수 있습니다.

 

"scripts": {
  "test": "jest"
}

개별 명령어를 따로 설정해서 원하는 부분의 테스트만 진행할 수도 있습니다.

{
  ...,
  "scripts": {
    "test": "jest",
    "test:1": "jest 1-example/",
    "test:2": "jest 2-review/",
    "test:3": "jest 3-review/",
    "test:watch": "jest --watch",
    "test:circleci": "jest --json --outputFile=.circleci/results.json",
    ...
  },
  ...
}

 

 

jest 는 크게 global functionmatcher 로 구성되어 있습니다.


Global function ?

jest 에서는 테스트를 설정하는 global function 을 사용합니다.

Matcher ?

jest 에서는 결과에 따라 다른 Matcher 를 사용합니다.

 

test 에 결과에 따라서 이를 참고하여 상황에 맞는 Matcher 를 사용할 수 있습니다.

 

Matcher 에 대한 Docs 는 아래 링크에서 확인하실 수 있습니다.

 

https://jestjs.io/docs/en/using-matchers


 

이제 직접 테스트를 만들고 적용시켜 보겠습니다.

 

'Be well coding > Learn more' 카테고리의 다른 글

Prettier 란 ? , Prettier 설치  (0) 2019.09.18
ESlint 란 ? , ESlint 설치  (0) 2019.09.18
Apollo Cache  (0) 2019.08.08
Kakao MAP 사용하기  (0) 2019.08.08
PASSPORT 카카오 (KaKao)2  (0) 2019.08.01
Comments