Tech

Diary

Lecture

About Me

개발중

FE TDD

JeongSeulho

2024년 01월 19일

준비중...
클립보드로 복사

0. 들어가며

TDD란 무엇이며, FE에서 TDD를 어떻게 적용할 수 있을까?

1. Test Driven Development(TDD)란?

(1) 정의

  • 개발 코드 작성 전에 요구 사항을 테스트 코드로 작성하고, 개발 코드를 작성하는 방식
  • 테스트 실패 => 개발 코드 작성 => 테스트 통과 => 리팩토링 => 테스트 실패(리팩토링에서 오류 발생 시) => … 를 반복

(2) 장점

  • 지속적인 테스트로 안정성 있는 작업
  • 리팩토링 시 안정성 유지

(3) 단점

  • 초기 개발 속도가 느리며 비용이 많이 듦

2. FE에서 TDD 적용하기

(1) TDD 도입이 불필요한 경우

  • 정해진 기한상 빠른 개발이 필요한 경우
  • UI만 보여주는 기능이 단순한 경우
  • 스타일 검증처럼 적용이 불가능한 경우

(2) TDD 도입이 적합한 경우

  • 공통 컴포넌트, 훅, 유틸리티 함수 등의 단위 테스트는 검증하고자 하는 기능이 명확하여 TDD 적용이 용이함
  • 비즈니스 로직에 대한 통합 테스트는 상태 관리, API 호출, 컴포넌트 조합 등을 TDD를 통해 안정적으로 리팩토링할 수 있음