Skip to main content
Glama
PHASE_2.7_COMPREHENSIVE_TEST_GUIDE.md11.2 kB
# Phase 2.7 종합 테스트 가이드 ## 📋 테스트 개요 **테스트 대상**: Phase 2.7 문서 관리 시스템 + Phase 2.6 이슈 해결 검증 **필수 구성요소**: - SQLite 데이터베이스 (workflow.db) - Document Management MCP 서버 - SvelteKit 대시보드 (Chart.js & D3.js 이슈 해결) - 기존 WorkflowMCP 기능 유지 **테스트 목표**: 1. Phase 2.7 문서 관리 시스템 검증 2. Phase 2.6 미해결 이슈 해결 확인 3. 전체 시스템 통합성 검증 --- ## ✅ Phase 2.6 이슈 해결 완료 ### 이슈 #1: Chart.js 초기화 문제 - **해결됨** **상태**: ✅ **해결완료** **문제**: 데이터베이스 경로 오류로 인한 빈 데이터, 차트 초기화 실패 **해결**: - 데이터베이스 경로 수정: `process.cwd()` → `__dirname` 기반 안정적 경로 - 빈 데이터에서도 기본 차트 렌더링 지원 - ES 모듈에서 `require` → `import` 수정 ### 이슈 #2: Gantt 차트 D3.js 렌더링 오류 - **해결됨** **상태**: ✅ **해결완료** **문제**: `<rect> attribute width: A negative value is not valid` **해결**: - 음수 너비 방지: `Math.max(width, 10)` 최소 너비 보장 - 날짜 검증: endDate ≤ startDate인 경우 자동 보정 - 안정적인 데이터 처리 로직 추가 --- ## 🗄️ PART 1: SQLite 데이터베이스 검증 ### 1.1 데이터베이스 파일 존재 확인 ```bash # 위치 확인 ls -la data/workflow.db # 예상 결과: 파일 존재, 크기 > 200KB ``` ### 1.2 문서 관리 테이블 구조 확인 ```bash # 테이블 목록 확인 sqlite3 data/workflow.db ".tables" # 예상 결과: documents, document_links, documents_fts 테이블 포함 ``` ### 1.3 테스트 데이터 확인 ```bash # 문서 수 확인 sqlite3 data/workflow.db "SELECT COUNT(*) FROM documents;" # 문서 목록 확인 sqlite3 data/workflow.db "SELECT id, title, doc_type FROM documents LIMIT 5;" # 예상 결과: 최소 3개 문서 (테스트 가이드, 결과 보고서, 체크리스트) ``` --- ## 🔧 PART 2: Document Management MCP 서버 테스트 ### 2.1 MCP 서버 시작 및 연결 테스트 #### 전제조건 확인 ```bash # Node.js 버전 확인 (v18+ 필요) node --version # 의존성 설치 확인 cd /c/dev/juk/edit/workflow-mcp npm install ``` #### MCP 서버 독립 실행 테스트 ```bash # MCP 서버 직접 실행 cd /c/dev/juk/edit/workflow-mcp node src/document-mcp-server.js # 예상 결과: "Document Management MCP Server started" 메시지 # 오류 없이 서버 시작 (Ctrl+C로 종료) ``` ### 2.2 Claude Code MCP 통합 테스트 #### 설정 확인 ```bash # MCP 설정 파일 확인 cat .mcp.json # 예상 내용: document-mcp-server 항목 존재 ``` #### Claude Code 내에서 MCP 도구 확인 ``` 1. Claude Code 시작: claude --debug 2. 디버그 모드에서 2분 대기 (MCP 서버 부팅 확인) 3. /mcp 명령어로 사용 가능한 MCP 도구 확인 4. 예상 결과: document management 관련 9개 도구 표시 ``` ### 2.3 핵심 MCP 도구 기능 테스트 #### 도구 #1: list_documents ``` Claude Code에서 실행: mcp__workflow-mcp__list_documents 예상 결과: - 최소 3개 문서 반환 - 각 문서에 id, title, doc_type, created_at 필드 포함 ``` #### 도구 #2: get_document ``` Claude Code에서 실행: mcp__workflow-mcp__get_document {"id": 1} 예상 결과: - 문서 전체 내용 반환 - title, content, doc_type, tags 등 모든 필드 포함 ``` #### 도구 #3: create_document ``` Claude Code에서 실행: mcp__workflow-mcp__create_document { "title": "Phase 2.7 테스트 문서", "content": "MCP 도구 테스트용 문서입니다.", "doc_type": "test", "category": "testing", "tags": ["test", "mcp", "phase_2.7"] } 예상 결과: - 새 문서 ID 반환 - 성공 메시지 ``` #### 도구 #4: search_documents ``` Claude Code에서 실행: mcp__workflow-mcp__search_documents {"query": "테스트"} 예상 결과: - 검색어가 포함된 문서들 반환 - 최소 2개 문서 매칭 (기존 테스트 문서 + 새로 생성한 문서) ``` #### 도구 #5: update_document ``` Claude Code에서 실행: mcp__workflow-mcp__update_document { "id": [새로_생성한_문서_ID], "content": "업데이트된 내용입니다.", "status": "published" } 예상 결과: - 문서 업데이트 성공 - updated_at 필드 갱신 ``` ### 2.4 고급 기능 테스트 #### 전체 텍스트 검색 (FTS) ``` mcp__workflow-mcp__search_documents {"query": "SvelteKit Dashboard"} 예상 결과: - FTS 인덱스를 통한 빠른 검색 - 관련 문서들 반환 ``` #### 문서 연결 기능 ``` mcp__workflow-mcp__link_document { "document_id": 1, "linked_entity_type": "task", "linked_entity_id": "1.1", "link_type": "reference" } 예상 결과: - 문서 링크 생성 성공 ``` --- ## 🎨 PART 3: SvelteKit 대시보드 통합 테스트 ### 3.1 서버 시작 및 기본 동작 ```bash # 대시보드 서버 시작 cd /c/dev/juk/edit/workflow-mcp/dashboard npm run dev # 예상 결과: http://localhost:3302 에서 서버 실행 ``` ### 3.2 Phase 2.6 이슈 해결 확인 (간단 검증) #### Chart.js 초기화 문제 해결 확인 1. **브라우저에서 접근**: http://localhost:3302 2. **대시보드 페이지 확인**: - ✅ 통계 카드 4개 정상 표시 - ✅ **차트 2개 정상 렌더링** (해결됨) 3. **브라우저 콘솔 확인**: - Chart.js 관련 오류 없음 - 차트 인스턴스 정상 생성 #### D3.js Gantt 차트 렌더링 오류 해결 확인 1. **간트 차트 페이지 접근**: http://localhost:3302/gantt 2. **렌더링 확인**: - ✅ 타임라인 정상 표시 - ✅ **모든 막대 그래프 정상 렌더링** (해결됨) 3. **브라우저 콘솔 확인**: - `negative value is not valid` 오류 없음 - D3.js 스케일링 정상 동작 ### 3.3 문서 관리 UI 통합 (새 기능) #### 새 페이지: 문서 관리 탭 추가 확인 1. **내비게이션 메뉴 확인**: "문서 관리" 탭 추가 2. **문서 관리 페이지**: http://localhost:3302/documents 3. **기능 테스트**: - 문서 목록 표시 - 새 문서 생성 버튼 - 검색 기능 - 카테고리 필터링 --- ## 🔗 PART 4: 시스템 통합성 테스트 ### 4.1 WorkflowMCP ↔ Document Management 연동 #### PRD 문서와 작업 연결 테스트 ``` Claude Code에서 실행: 1. PRD 생성: mcp__workflow-mcp__create_prd 2. 관련 문서 생성: mcp__workflow-mcp__create_document 3. 문서-PRD 연결: mcp__workflow-mcp__link_document 4. 연결 확인: mcp__workflow-mcp__get_linked_data ``` #### 작업 진행과 문서 업데이트 연동 ``` 1. 작업 상태 변경: mcp__workflow-mcp__update_task 2. 관련 문서 업데이트: mcp__workflow-mcp__update_document 3. 대시보드에서 변경사항 확인 ``` ### 4.2 SQLite 데이터베이스 무결성 확인 ```bash # 데이터베이스 무결성 검사 sqlite3 data/workflow.db "PRAGMA integrity_check;" # 외래 키 제약 조건 확인 sqlite3 data/workflow.db "PRAGMA foreign_key_check;" # 예상 결과: "ok" 반환, 오류 없음 ``` --- ## ✅ PART 5: 성능 및 안정성 테스트 ### 5.1 동시성 테스트 ``` Claude Code에서 동시에 실행: 1. 여러 문서 동시 생성 (5개) 2. 동시 검색 요청 (3개) 3. 문서 업데이트와 조회 동시 실행 예상 결과: 모든 작업 성공, 데이터 일관성 유지 ``` ### 5.2 대용량 데이터 테스트 ``` 1. 긴 내용의 문서 생성 (10,000자 이상) 2. 다수의 문서 생성 (50개) 3. 복잡한 검색 쿼리 실행 예상 결과: 성능 저하 없이 정상 처리 ``` ### 5.3 오류 복구 테스트 ``` 1. 잘못된 문서 ID로 조회 시도 2. 필수 필드 누락으로 문서 생성 시도 3. 존재하지 않는 문서 업데이트 시도 예상 결과: 적절한 오류 메시지 반환, 시스템 안정성 유지 ``` --- ## 🎯 PART 6: 최종 검증 체크리스트 ### Phase 2.6 이슈 해결 확인 - [x] Chart.js 초기화 문제 완전 해결 ✅ **해결완료** - [x] Gantt 차트 D3.js 렌더링 오류 완전 해결 ✅ **해결완료** - [ ] 기존 SvelteKit 대시보드 기능 유지 (간단 검증) ### Phase 2.7 문서 관리 시스템 확인 - [ ] SQLite 스키마 정상 생성 (documents, document_links, documents_fts) - [ ] MCP 서버 독립 실행 성공 - [ ] Claude Code MCP 통합 성공 - [ ] 9개 MCP 도구 모두 정상 동작 - [ ] 전체 텍스트 검색(FTS) 기능 동작 - [ ] 문서 연결 기능 동작 ### 시스템 통합성 확인 - [ ] 기존 WorkflowMCP 기능 유지 - [ ] 문서 관리와 워크플로우 연동 - [ ] SQLite 데이터베이스 무결성 유지 - [ ] 동시성 및 성능 요구사항 충족 --- ## 🚨 테스트 실패 시 대응 방안 ### Chart.js 초기화 실패 시 ``` 1. dashboard/src/lib/components/Dashboard.svelte 파일 확인 2. Chart.js import 구문 확인 3. onMount 함수 내 차트 초기화 로직 점검 4. 브라우저 콘솔에서 Chart.js 로딩 상태 확인 ``` ### D3.js 렌더링 오류 시 ``` 1. dashboard/src/lib/components/GanttChart.svelte 파일 확인 2. D3.js 스케일 함수에서 음수 값 처리 로직 확인 3. 데이터 전처리에서 유효하지 않은 날짜/길이 값 필터링 ``` ### MCP 연결 실패 시 ``` 1. .mcp.json 설정 파일 구문 확인 2. Node.js 경로 및 버전 확인 3. document-mcp-server.js 파일 존재 및 실행 권한 확인 4. SQLite 데이터베이스 파일 접근 권한 확인 ``` --- ## 📊 예상 테스트 결과 요약 ### 성공 기준 - **Phase 2.6 이슈**: 2개 모두 해결 (Chart.js + D3.js) - **Document Management MCP**: 9개 도구 모두 정상 동작 - **SQLite 통합**: 무결성 검사 통과 - **성능**: 모든 작업 2초 이내 완료 ### 테스트 소요 시간 (업데이트됨) - **PART 1-2 (데이터베이스 + MCP)**: 30분 - **PART 3 (대시보드 간단 검증 + Phase 2.7 UI)**: 15분 (단축됨) - **PART 4-5 (통합 + 성능)**: 25분 - **PART 6 (최종 검증)**: 10분 - **총 소요 시간**: 약 **70분** (20분 단축) --- ## 📋 테스트 결과 보고 형식 ```markdown # Phase 2.7 테스트 결과 보고서 ## 📊 전체 결과 요약 - **테스트 일시**: [날짜/시간] - **테스트 환경**: [OS, Node.js 버전, 브라우저] - **전체 테스트**: [총 개수]개 - **통과**: [개수]개 ✅ - **부분 통과**: [개수]개 🟡 - **실패**: [개수]개 ❌ - **통과율**: [%] ## 🔧 Phase 2.6 이슈 해결 결과 ### Chart.js 초기화 문제 - **상태**: [해결됨/부분해결/미해결] - **세부사항**: [구체적인 결과] ### D3.js Gantt 차트 렌더링 오류 - **상태**: [해결됨/부분해결/미해결] - **세부사항**: [구체적인 결과] ## 📑 Phase 2.7 문서 관리 시스템 결과 [각 PART별 세부 테스트 결과] ## 🚨 발견된 새로운 이슈 [새로 발견된 문제점들] ## 📈 권장사항 [다음 단계 개발 방향] ``` --- **문서 작성자**: Claude Code Assistant **문서 버전**: v1.0 **작성일**: 2025년 9월 5일 **테스트 대상**: Phase 2.7 문서 관리 시스템 + Phase 2.6 이슈 해결

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/foswmine/workflow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server