주요 변경사항: - CLAUDE.md: 프로젝트 규칙 v2.0으로 업데이트, 아키텍처 명확화 - 불필요한 문서 제거: NEXT_TASKS.md, TEST_PROGRESS.md, test_results 파일들 - 테스트 시스템 개선: 실제 API 테스트 스위트 추가 (15개 새 테스트 파일) - License 관리: DTO 모델 개선, API 응답 처리 최적화 - 에러 처리: Interceptor 로직 강화, 상세 로깅 추가 - Company/User/Warehouse 테스트: 자동화 테스트 안정성 향상 - Phone Utils: 전화번호 포맷팅 로직 개선 - Overview Controller: 대시보드 데이터 로딩 최적화 - Analysis Options: Flutter 린트 규칙 추가 테스트 개선: - company_real_api_test.dart: 실제 API 회사 관리 테스트 - equipment_in/out_real_api_test.dart: 장비 입출고 API 테스트 - license_real_api_test.dart: 라이선스 관리 API 테스트 - user_real_api_test.dart: 사용자 관리 API 테스트 - warehouse_location_real_api_test.dart: 창고 위치 API 테스트 - filter_sort_test.dart: 필터링/정렬 기능 테스트 - pagination_test.dart: 페이지네이션 테스트 - interactive_search_test.dart: 검색 기능 테스트 - overview_dashboard_test.dart: 대시보드 통합 테스트 코드 품질: - 모든 서비스에 에러 처리 강화 - DTO 모델 null safety 개선 - 테스트 커버리지 확대 - 불필요한 로그 파일 제거로 리포지토리 정리 Co-Authored-By: Claude <noreply@anthropic.com>
5.0 KiB
5.0 KiB
라이센스 화면 API 로깅 테스트 가이드
🚀 실행 방법
# Chrome 브라우저로 실행
flutter run -d chrome
📌 로그인 정보
- 계정: admin@superport.kr
- 비밀번호: admin123!
🔍 터미널에서 확인할 로그
1. 화면 초기화 시
========== 라이센스 화면 초기화 ==========
📌 USE_API 설정값: true
📌 API Base URL: http://43.201.34.104:8080/api/v1
📌 Controller 모드: Real API
==========================================
2. API 요청 시 (Request)
╔════════════════════════════════════════════════════════════
║ 📤 LICENSE API REQUEST
╟────────────────────────────────────────────────────────────
║ Endpoint: GET /licenses
║ Parameters:
║ - page: 1
║ - perPage: 20
║ - isActive: true (필터 적용 시)
║ - companyId: 78 (회사 필터 적용 시)
╚════════════════════════════════════════════════════════════
3. API 응답 시 (Response)
╔════════════════════════════════════════════════════════════
║ 📥 LICENSE API RESPONSE
╟────────────────────────────────────────────────────────────
║ Status: SUCCESS
║ Total Items: 19
║ Current Page: 1
║ Total Pages: 1
║ Returned Items: 19
║ Sample Data:
║ - ID: 20
║ - Product: TeamViewer Business
║ - Company: 한국물류창고(주)
╚════════════════════════════════════════════════════════════
4. LoggingInterceptor 로그 (자동)
╔════════════════════════════════════════════════════════════
║ REQUEST [2025-08-07T15:27:54.050596]
╟────────────────────────────────────────────────────────────
║ GET http://43.201.34.104:8080/api/v1/licenses
╟────────────────────────────────────────────────────────────
║ Headers:
║ Content-Type: application/json
║ Accept: application/json
║ Authorization: Bearer eyJ0eXAiOi...
╚════════════════════════════════════════════════════════════
╔════════════════════════════════════════════════════════════
║ RESPONSE
╟────────────────────────────────────────────────────────────
║ GET http://43.201.34.104:8080/api/v1/licenses
║ Status: 200 OK
║ Duration: 54ms
║ Response Body:
║ {
║ "success": true,
║ "data": [
║ ...
║ ]
║ }
╚════════════════════════════════════════════════════════════
🎯 테스트 시나리오
-
앱 실행 후 로그인
- 터미널에서 로그인 요청/응답 확인
-
라이센스 관리 메뉴 클릭
- 화면 초기화 로그 확인
- 라이센스 목록 조회 API 로그 확인
-
필터 적용 (회사, 상태 등)
- 필터 파라미터가 포함된 API 요청 확인
- ⚠️ 백엔드가 필터를 무시하면 전체 데이터 반환
-
라이센스 추가
- POST /licenses 요청 로그 확인
- 생성된 라이센스 정보 응답 확인
-
페이지네이션
- page 파라미터 변경 확인
📊 로그 레벨
- 🔵 INFO: 일반 정보 (파란색)
- 🟡 WARNING: 경고 (노란색)
- 🔴 ERROR: 오류 (빨간색)
- 🟢 SUCCESS: 성공 (녹색)
🔧 로그 비활성화
.env.development 파일에서:
ENABLE_LOGGING=false # 로그 비활성화
💡 디버깅 팁
- Chrome DevTools 열기: F12
- Console 탭에서도 로그 확인 가능
- Network 탭에서 실제 API 요청/응답 확인
이제 flutter run -d chrome으로 실행하면 터미널에서 모든 API 요청/응답을 실시간으로 확인할 수 있습니다!