개발일지/React
[13] Jest란?
꾸주니=^=
2024. 12. 9. 00:34
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);
-> 두 값이 다른지 확인.
- expect(2 + 2).toBe(4);
3. 실행 결과 및 매처의 활용
테스트 실행 결과와 함께 매처가 어떻게 적용되는지 보여줍니다.
- toBe: 값이 같은지 확인.
- not.toBe: 값이 다른지 확인.
- 테스트가 통과(PASS)되면, 실행 결과는 초록색으로 표시되고 통과된 테스트 수를 보여줍니다.
정리
Jest는 간단하고 강력한 테스트 도구로, describe로 그룹화하고 it 또는 test로 개별 테스트를 작성하며, expect와 matcher를 통해 원하는 결과를 검증합니다.
이 구조를 이해하면 보다 체계적이고 효율적인 테스트를 작성할 수 있습니다!