React 컴포넌트를 테스트하는 2가지 방법
- 컴포넌트 트리 렌더링: 간략화된 테스팅 환경 및 출력값이 확실한 경우.
- 완성된 앱에서의 테스트: 현실적 브라우저 환경(E2E)
트레이드오프
테스팅 도구를 선택할 때 몇가지 트레이드 오프를 생각해봐라
- 반복작업 속도 vs 현실적인 개발 환경: 몇몇 도구들은 변경사항이 생기고 결과 값이 출력되는 과정에서 매우 빠른 피드백 루프를 제공하지만 브라우저 동작을 정확하게 구현하지 않는다. 다른 도구들이 현실적 브라우저 환경에서 사용되지만 반복 작업 속도를 저하시키고 지속적 통합 서버 환경에서 더 연약하다.
- 얼마나 다양한 방법을 통해 실제 테스트 환경의 동작을 테스트 할 것인가? 컴포넌트 안에서는 ‘유닛’테스트와 ‘통합’테스트의 차이는 명확하지 않다.