본문 바로가기
개발일지/React

[13] Jest란?

by 꾸주니=^= 2024. 12. 9.

Jest

facebook에 의해서 만들어진 테스팅 프레임워크이다.
최소한의 설정으로 동작하며 Test Case를 만들어서 어플리케이션 코드가 잘 돌아가는지 확인해준다.
단위(Unit) 테스트를 위해서 이용한다.

 


Jest 파일 구조 및 설명

1. Jest 파일 구조

Jest 테스트 파일의 전형적인 구조는 다음과 같습니다.

  • describe: 테스트를 그룹화하는 블록입니다. 예를 들어, 특정 함수나 컨트롤러와 관련된 테스트를 하나의 describe로 묶습니다.
  • it 또는 test: 각 개별 테스트를 정의합니다. it은 읽기 쉽게 "이 테스트는 무엇을 해야 한다(it should...)"와 같은 문장을 작성할 때 유용합니다.
  • expect: 테스트에서 검증하는 부분으로, 결과값이 기대값과 일치하는지를 확인합니다.
  • 매처 (matcher): expect와 함께 사용되어 테스트를 구체화합니다. 예: toBe, toEqual, toBeTruthy.

 

2. expect와 matcher

  • expect
    • 테스트하려는 값을 인자로 받아옵니다.
    • 단독으로는 거의 사용되지 않으며, 매처와 함께 사용됩니다.
  • matcher
    • expect의 값을 검증하는 메소드입니다.
    • 예: toBe, toEqual, not.toBe 등.
  • 사용 예
    • expect(2 + 2).toBe(4);
      -> 두 값이 정확히 같은지 확인.
    • expect(2 + 2).not.toBe(5);
      -> 두 값이 다른지 확인.

 

3. 실행 결과 및 매처의 활용

테스트 실행 결과와 함께 매처가 어떻게 적용되는지 보여줍니다.

  • toBe: 값이 같은지 확인.
  • not.toBe: 값이 다른지 확인.
  • 테스트가 통과(PASS)되면, 실행 결과는 초록색으로 표시되고 통과된 테스트 수를 보여줍니다.


정리

Jest는 간단하고 강력한 테스트 도구로, describe로 그룹화하고 it 또는 test로 개별 테스트를 작성하며, expect와 matcher를 통해 원하는 결과를 검증합니다.
이 구조를 이해하면 보다 체계적이고 효율적인 테스트를 작성할 수 있습니다!