Repolode
testing-library

testing-library/react-testing-library

사용자 관점에서 컴포넌트를 조회하고 상호작용하는 가벼운 React DOM 테스트 유틸리티입니다.

스타
19,672
포크
1,171
열린 이슈
84
마지막 커밋
2개월 전

어떤 프로젝트인가요?

React Testing Library는 react-dom과 react-dom/test-utils를 기반으로 React 컴포넌트 테스트를 위한 유틸리티 함수를 제공합니다. 소프트웨어가 실제로 사용되는 방식과 테스트가 비슷해야 한다는 원칙에 따라, 컴포넌트 인스턴스가 아닌 DOM 노드에 초점을 맞추고 구현 세부 사항은 드러내지 않습니다.

render, getByRole, getByLabelText, getByText 같은 screen 쿼리, 사용자 상호작용을 시뮬레이션하는 fireEvent를 제공합니다. get, query, find 접두사가 붙은 쿼리는 요소가 있어야 하는 경우, 요소가 없음을 확인하는 경우, 요소가 나타날 때까지 기다리는 경우 등 일반적인 상황을 지원합니다. 버전 16부터는 @testing-library/dom을 peer dependency로 요구하며, 버전 13 이상은 React 18이 필요합니다.

주로 Jest를 비롯한 테스트 러너와 함께 사용하며, DOM 단언을 위한 @testing-library/jest-dom 및 API 호출을 모킹하는 Mock Service Worker와도 잘 어울립니다. 재사용 가능한 커스텀 훅을 위한 별도의 React Hooks Testing Library도 있습니다.

핵심 기능

  • 01사용자가 요소를 찾는 방식처럼 접근 가능한 역할, 레이블, 텍스트로 요소를 조회합니다.
  • 02컴포넌트를 렌더링하고 상호작용을 시뮬레이션하는 render 및 fireEvent 헬퍼를 제공합니다.
  • 03비동기 UI 업데이트를 위한 async find 및 waitFor 유틸리티를 포함합니다.
  • 04react-dom을 기반으로 Jest 및 기타 테스트 러너와 함께 사용할 수 있습니다.
  • 05읽기 쉬운 DOM 단언을 위한 jest-dom matcher와 함께 사용할 수 있습니다.

활용 사례

  • 리팩터링 후에도 안정적으로 유지되는 React 컴포넌트 단위 테스트 또는 통합 테스트 작성.
  • React 애플리케이션의 폼, 사용자 흐름, 조건부 렌더링 테스트.
  • 로딩 상태와 가져온 데이터 등 비동기 UI 동작 검증.

빠른 시작

  1. 1

    npm을 사용해 React Testing Library와 DOM testing utilities를 개발 의존성으로 설치합니다

    npm install --save-dev @testing-library/react @testing-library/dom
  2. 2

    대신 yarn으로 설치할 수도 있습니다

    yarn add --dev @testing-library/react @testing-library/dom
  3. 3

    라이브러리의 render와 screen을 사용해 컴포넌트를 렌더링하고, 사용자가 사용하는 방식대로 요소를 조회하는 테스트를 작성합니다

사용 전 알아둘 점

  • 버전 16부터는 @testing-library/dom을 별도로 설치해야 합니다.
  • 버전 13 이상은 React 18이 필요합니다. 이전 React 프로젝트에서는 버전 12를 사용해야 합니다.

토픽

자주 묻는 질문

react-testing-library은(는) 무엇인가요?
사용자 관점에서 컴포넌트를 조회하고 상호작용하는 가벼운 React DOM 테스트 유틸리티입니다. React Testing Library는 react-dom과 react-dom/test-utils를 기반으로 React 컴포넌트 테스트를 위한 유틸리티 함수를 제공합니다. 소프트웨어가 실제로 사용되는 방식과 테스트가 비슷해야 한다는 원칙에 따라, 컴포넌트 인스턴스가 아닌 DOM 노드에 초점을 맞추고 구현 세부 사항은 드러내지 않습니다.
react-testing-library은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
react-testing-library은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
react-testing-library은(는) 아직 유지보수되고 있나요?
6개월 이내 업데이트. react-testing-library의 마지막 커밋은 2026년 8월 27일입니다.
react-testing-library은(는) 어디에 사용할 수 있나요?
리팩터링 후에도 안정적으로 유지되는 React 컴포넌트 단위 테스트 또는 통합 테스트 작성. React 애플리케이션의 폼, 사용자 흐름, 조건부 렌더링 테스트. 로딩 상태와 가져온 데이터 등 비동기 UI 동작 검증.
react-testing-library는 어떻게 설치하나요?
npm을 사용해 React Testing Library와 DOM testing utilities를 개발 의존성으로 설치합니다: npm install --save-dev @testing-library/react @testing-library/dom 대신 yarn으로 설치할 수도 있습니다: yarn add --dev @testing-library/react @testing-library/dom 라이브러리의 render와 screen을 사용해 컴포넌트를 렌더링하고, 사용자가 사용하는 방식대로 요소를 조회하는 테스트를 작성합니다
react-testing-library은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/testing-library/react-testing-library

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트