Home [React] Jest(2) Matcher
Post
Cancel

[React] Jest(2) Matcher


Matcher(매처)란?

테스트 케이스에서 예상 결과와 실제 결과를 비교하고 검증하는 데 사용되는 함수들을 뜻하며
Matchers는 expect() 함수와 함께 사용되며, expect() 함수로 값에 대한 예상 결과와 실제 결과를 검사하는 역할을 합니다.
Jest는 다양한 Matcher를 제공하여 다양한 유형의 검증을 수행할 수 있도록 합니다.

다양한 Matcher

toBe()

  • 값을 엄격하게(정확히) 비교합니다. 값과 데이터 유형이 정확히 일치해야 합니다.
1
expect(result).toBe(3); // result의 값이 3과 정확히 일치해야 함


toEqual()

  • 객체나 배열과 같은 복합 데이터 유형을 깊게 비교합니다.
1
expect(result).toEqual(objectB); // result의 객체 내용이 깊게 일치해야 함


toMatch()

  • 정규 표현식을 사용하여 문자열을 비교합니다.
1
expect(result).toMatch(/pattern/); // result의 문자열이 정규 표현식과 일치해야 함


toContain()

  • 배열 또는 문자열 내에 특정 요소가 존재하는지 확인합니다.
1
expect(result).toContain(item); // result 배열에 특정 항목이 포함되어야 함


toBeNull()

  • 값이 null인지 확인합니다.
1
expect(result).toBeNull(); // 값이 null이어야 함


toBeDefined()

  • 값이 undefined가 아닌지 확인합니다.
1
expect(result).toBeDefined(); // 값이 undefined가 아니어야 함


toBeTruthy() / toBeFalsy()

  • 값이 true 또는 false인지 확인합니다.
1
2
expect(result).toBeTruthy(); // 값이 true이어야 함
expect(result).toBeFalsy(); // 값이 false이어야 함


toBeGreaterThan() / toBeLessThan()

  • 값이 특정 값보다 큰지 또는 작은지 확인합니다.
1
2
expect(result).toBeGreaterThan(5); // 값이 5보다 커야 함
expect(result).toBeLessThan(10); // 값이 10보다 작아야 함


toHaveLength()

  • 배열 또는 문자열의 길이를 확인합니다.
1
2
expect(result).toHaveLength(3); // 배열의 길이가 3이어야 함
expect(result).toHaveLength(10); // 문자열의 길이가 10이어야 함

마치며

혹시 잘못된 정보나 궁금하신 게 있다면 편하게 댓글 달아주세요.
지적이나 피드백은 언제나 환영입니다.

This post is licensed under CC BY 4.0 by the author.