component test choice

기능 검증은 RTL, 브라우저 차이는 Cypress CT로 보완한다

컴포넌트 테스트 도구는 빠른 피드백과 실제 브라우저 충실도 사이의 균형으로 고릅니다.

Jest + RTL

사용자 관점의 빠른 검증

렌더링, 클릭, 입력, 접근성 role 기반 쿼리처럼 대부분의 클라이언트 컴포넌트 동작을 빠르게 확인합니다.

Cypress CT

실제 브라우저에서의 UI 확인

레이아웃, CSS 상호작용, 반응형 상태처럼 JSDOM만으로 부족한 부분을 브라우저에서 검증합니다.

빠른 회귀

자주 바뀌는 버튼과 폼은 RTL이 적합합니다.

스타일 의존

CSS와 브라우저 차이가 중요하면 Cypress CT를 씁니다.

외부 의존성

Context, router, fetch는 mock 기준을 먼저 정합니다.

테스트 비용

느린 테스트는 핵심 컴포넌트에 집중해 유지합니다.

운영 기준

컴포넌트 테스트는 내부 구현보다 사용자에게 보이는 약속을 지키는지 확인하는 도구입니다. 도구 선택도 그 약속을 가장 선명하게 검증하는 방향으로 정합니다.