프론트엔드에서 주로 사용하는 테스트의 종류로는 아래와 같이 것들이 있습니다.
- 유닛 테스트 (Unit testing)
- 개별 단위(또는 코드 블록)를 독립적으로 테스트하는 것
- 리액트의 경우 유닛은 단일 함수, 훅 또는 컴포넌트일 수 있음
- 컴포넌트 테스트 (Component testing)
- 각각의 리액트 컴포넌트를 테스트하는 것
- 컴포넌트 렌더링 과정,
props와의 상호작용, 사용자 이벤트에 대한 반응 등의 테스트
- 통합 테스트 (Integration testing)
- 여러 단위가 함께 작동하는 방식을 테스트하는 것
- 컴포넌트, 훅 및 함수의 조합이 될 수 있음
- End-to-End (E2E) 테스트
- 시뮬레이션 환경에서 실제 사용자 시나리오를 테스트하는 것
- 프로덕션과 유사한 환경에서 특정 작업(예: 회원가입 flow)을 테스트하는 것
- 스냅샷 테스트 (Snapshot testing)
- 컴포넌트나 UI의 출력 결과를 저장하고 이후 변경 사항이 기존 스냅샷과 일치하는지 테스트하는 것
- 스냅샷의 변경 사항은 예기치 않은 동작 변화를 나타내는 데 사용됨
이러한 다양한 테스트의 종류와 특징을 잘 이해하고 각 상황에 맞게 적용하는 것이 필요합니다.