목록 보기
나만의 Jest Matchers 만들기
프론트엔드

나만의 Jest Matchers 만들기

두줄요약

Jest Custom Matcher로 여러 CSS class 포함 여부를 한 번에 검증하는 방법을 설명했습니다. 설정 파일 등록, 타입 검증, TypeScript 타입 확장 과정을 함께 다뤘습니다.

구조와 흐름

  • expect(결과).toEqual(예상값) 형태에서 결과와 예상값 관계를 검증하는 Jest Matcher 개념
  • jest.setup.js를 setupFilesAfterEnv에 등록하고 expect.extend로 Custom Matcher 확장
  • toContainAllClasses에서 요소의 class 목록과 기대 배열을 비교해 모든 class 포함 여부 판별

해결 방법

  • 반복된 toContain 호출 대신 class 배열을 인자로 받는 toContainAllClasses Matcher 구성
  • HTMLElement와 배열 여부 사전 검증, pass와 실패 메시지 반환
  • TypeScript 환경에서 jest.d.ts의 jest.Matchers 인터페이스 확장

적용해볼 점

  • 테스트 코드의 반복 검증 로직을 도메인 의미를 가진 Custom Matcher로 추상화
  • 공통 Matcher 초기화 파일과 타입 선언 파일의 프로젝트 설정 포함

카카오 계열사 채용30건

채용 사이트에서 전체 보기

다음 읽기

#Jest 주제를 이어서 읽기

나만의 Jest Matchers 만들기

Jest Custom Matcher를 만들어 반복적인 class 검증 테스트를 줄이는 방법을 소개했습니다. setup 파일 등록과 TypeScript 타입 선언까지 함께 다뤘습니다.

카카오엔터테인먼트FE
카카오엔터테인먼트FE
프론트엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...