string utility tdd

테스트 파일은 기능 명세가 누적되는 장소가 된다

`capitalize`를 통과시킨 뒤 같은 테스트 파일에 `reverseString` 요구사항을 추가하며 Red-Green-Refactor 사이클을 반복합니다.

Red

다음 요구사항을 테스트로 추가

describe('reverseString') expect(reverseString('hello'))

아직 함수가 없으므로 실패가 새로운 작업 범위를 정의합니다.

Green

가장 작은 구현으로 통과

export function reverseString(str) return str.split('').reverse().join('')

현재 테스트가 요구한 문자열 뒤집기 동작만 정확히 만족시킵니다.

Refactor

두 함수가 함께 통과하는지 확인

capitalize tests reverseString tests

기존 기능과 새 기능이 같은 안전망 안에서 계속 검증됩니다.

실습 핵심

기능을 하나 추가할 때마다 실패 테스트, 최소 구현, 개선, 전체 테스트 재실행을 작은 단위로 반복합니다.