프로젝트
Mock API 설계 및 협의 사항 정리
Chansman
2025. 6. 20. 05:54
Mock API 설계 및 협의 사항 정리
✅ 목적
- 쪽지시험 기능 관련 API 개발 전에 Mock API를 구현해 프론트엔드 개발 및 테스트 지원
✅ Mock API란?
- 실제 서버 로직 없이 프론트엔드와 테스트용으로 사용하는 가짜 API
- 정해진 JSON 형식의 응답을 반환하며, 기능 개발 전 미리 구조와 흐름을 확인 가능
✅ 구현 방식 제안
1안. View 내부 분기 처리 방식 (if MOCK_MODE)
- settings.py에 MOCK_MODE 플래그를 둠
- View 코드 내부에서 MOCK 응답 반환 여부를 조건 분기함
if settings.MOCK_MODE:
return Response(mock_data)
✅ 장점: 파일 하나로 관리 간편
⚠️ 단점: 코드 복잡도 증가, 실개발 코드에 영향
2안. Mock 전용 파일 별도 분리
- mock_api/views/ 디렉토리 또는 파일에 기능별 mock view 생성
- URLConf도 /mock/...와 같이 분리 가능
✅ 장점: 실제 코드와 분리되어 충돌 없음
⚠️ 단점: 프론트엔드가 실제 URL과 달라질 수 있음 → URL 구조 통일 필요
3안. mock 전용 앱 생성
- mock_api라는 앱을 따로 생성해 모든 mock view를 관리
- 추후 INSTALLED_APPS에서 제거만 해도 운영 배포 가능
✅ 장점: 규모 커질 때 유지보수 유리
⚠️ 단점: 관리 복잡도 소폭 증가
✅ URL 설계 기준
- 가능하면 실제 URL 구조와 일치하도록 작성
- /api/v1/... 형태 유지 권장
- 혹은 /mock/api/v1/... 로 통일해 Mock 구분
✅ 기타 고려사항
- API 명세서 기반으로 Mock API 작성
- 기능별 담당자가 Mock API 먼저 작성 → 프론트 우선 대응
- 이후 실개발 시작 시 PR 머지 시점 기준으로 분리/제거
✅ 논의 필요 사항
- 어떤 구현 방식을 채택할지? (1안 / 2안 / 3안)
- Mock API도 테스트코드 작성 대상인지?
- URL 경로는 실제 API 경로와 일치시킬지 여부
필요시 실코드 샘플, API 응답 포맷 예시 등도 정리 가능.