피드로 돌아가기
Dev.toBackend
원문 읽기
How This Developer Migrated a Full Laravel App in 8 Hours with Claude Code's TDD Pipeline
개발자가 TDD 기반 Claude Code 파이프라인으로 Laravel 앱을 8시간 내 커스텀 PHP 프레임워크로 마이그레이션하며 148개 테스트 작성
AI 요약
Context
Laravel 12 + Inertia + Vue 3로 구축된 GoFormX 애플리케이션을 커스텀 PHP 프레임워크 Waaseyaa로 전환해야 했으나, 대규모 마이그레이션의 복잡성과 검증 부담이 발생했다.
Technical Solution
- 6단계 TDD 파이프라인 도입: Scaffold → TDD Core Components → Wire → Verify → Deploy 순서로 구조화하고 각 단계마다 테스트 통과로 진행 검증
- 마이그레이션 사전 스펙 작성: 라우트, 데이터베이스 스키마, API 엔드포인트를 CLAUDE.md에 명시하여 Claude가 구체적 요구사항에 대해 실행
- Packagist 게시 패키지 3개 개발: waaseyaa/inertia(30 테스트), waaseyaa/auth(46 테스트, TOTP 2FA + rate limiting), waaseyaa/billing(35 테스트, Stripe 통합 + webhook 처리)
- Playwright MCP를 통한 E2E 검증: 단순 유닛 테스트 대신 브라우저 자동화로 GET /login → 인증 → dashboard 진입 등 전체 플로우 검증
- PHP-FPM 환경 문제 해결: Docker 환경변수 미상속 이슈를 FPM 설정의 clear_env = no 추가와 getenv() 헬퍼 함수로 해결
Impact
- 단일 8시간 세션에서 3개 Packagist 패키지 발행 완료
- 7개 PHP 컨트롤러, 28개 Vue 3 페이지 컴포넌트, 24개 shadcn-vue UI 컴포넌트 디렉토리 구현
- 총 148개 테스트 작성 및 모두 통과(green)
- Docker Compose 6개 서비스, GitHub Actions CI/CD, Ansible 배포 설정 포함한 프로덕션 레벨 애플리케이션 스캐폴드 생성
Key Takeaway
복잡한 마이그레이션 프로젝트에서 TDD를 Claude의 피드백 루프로 활용하면 테스트 통과 시점마다 명확한 진행 상태를 파악할 수 있으며, 세부 스펙 사전 작성과 증분식 검증이 대규모 작업을 안정적으로 완수하는 핵심이다.
실천 포인트
Claude Code를 활용한 마이그레이션 프로젝트에서 사전 작성한 상세 스펙(라우트, 엔티티, API 엔드포인트)을 기반으로 각 작업을 테스트 작성 → 실패 확인 → 구현 → 통과 검증의 6단계 파이프라인으로 분해하면, 8시간 내 프로덕션 레벨의 완성도 높은 마이그레이션을 달성할 수 있다.