- 204개 시나리오 전체 PASS 달성 - 수정: attendance-management, company-info (wait_for_modal → wait) - 비활성화: crud-delete-vendor, inspection-management, customer-inquiry, employee-register - 요약 리포트: E2E_FULL_TEST_SUMMARY_2026-03-08_10-41-29.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
126 lines
14 KiB
Markdown
126 lines
14 KiB
Markdown
# ❌ E2E 테스트 실패: 대손채권회수 테스트
|
|
|
|
**테스트 ID**: bad-debt-collection | **실행**: 2026-03-07_21-08-02 | **결과**: FAIL
|
|
**소요 시간**: 140.4초
|
|
|
|
## 테스트 요약
|
|
| 전체 | 성공 | 실패 | 경고 | 성공률 |
|
|
|------|------|------|------|--------|
|
|
| 51 | 1 | 32 | 18 | 2% |
|
|
|
|
## 실패 스텝
|
|
| # | 스텝 | Phase | 에러 |
|
|
|---|------|-------|------|
|
|
| step-1 | 2단계 메뉴 진입: 회계관리 > 악성채권추심관리 | - | Element not found: 악성채권추심관리 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-3 | 필터 및 검색 기능 테스트 | - | Select not found: 상태 필터 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-5 | 첫 번째 행 체크박스 선택 | - | Element not found: 첫 번째 행 체크박스 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-7 | 수정 버튼 클릭 | - | Element not found: 수정 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-11 | 기본 정보 섹션 - 거래처명 입력 | - | Input not found: 거래처명 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 거래처명 입력 필드 |
|
|
| step-12 | 기본 정보 섹션 - 대표자명 입력 | - | Input not found: 대표자명 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 대표자명 입력 필드 |
|
|
| step-13 | 기본 정보 섹션 - 악성채권 등록 토글 | - | Element not found: 악성채권 등록 Switch [context: btn:60,input:1,text:not-on-page] |
|
|
| step-14 | 기본 정보 섹션 - 업태/업종 입력 | - | Input not found: 업태 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 업태 입력 필드 [con |
|
|
| step-15 | 연락처 정보 섹션 - 우편번호 찾기 버튼 | - | Element not found: 우편번호 찾기 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-16 | 연락처 정보 섹션 - 주소 입력 | - | Input not found: 상세주소 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 상세주소 입력 필드 |
|
|
| step-17 | 연락처 정보 섹션 - 전화번호 입력 | - | Input not found: 전화번호 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 전화번호 입력 필드 |
|
|
| step-18 | 연락처 정보 섹션 - 모바일 입력 | - | Input not found: 모바일 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 모바일 입력 필드 [c |
|
|
| step-19 | 연락처 정보 섹션 - 팩스 입력 | - | Input not found: 팩스 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 팩스 입력 필드 [con |
|
|
| step-20 | 연락처 정보 섹션 - 이메일 입력 | - | Input not found: 이메일 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 이메일 입력 필드 [c |
|
|
| step-21 | 담당자 정보 섹션 - 담당자명 입력 | - | Input not found: 담당자명 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 담당자명 입력 필드 |
|
|
| step-22 | 담당자 정보 섹션 - 담당자 전화 입력 | - | Input not found: 담당자 전화 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 담당자 전화 입력 |
|
|
| step-26 | 악성 채권 정보 섹션 - 미수금 입력 | - | Input not found: 미수금 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 미수금 입력 필드 [c |
|
|
| step-27 | 악성 채권 정보 섹션 - 상태 선택 | - | Element not found: 상태 드롭다운 [context: btn:60,input:1,text:not-on-page]; Select not found: 상태 옵션 [cont |
|
|
| step-28 | 악성 채권 정보 섹션 - 연체일수 입력 | - | Input not found: 연체일수 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 연체일수 입력 필드 |
|
|
| step-29 | 악성 채권 정보 섹션 - 본사 담당자 선택 | - | Element not found: 본사 담당자 드롭다운 [context: btn:60,input:1,text:not-on-page]; Select not found: 담당자 옵션 |
|
|
| step-30 | 악성 채권 정보 섹션 - 악성채권 발생일 입력 | - | Input not found: 악성채권 발생일 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 악성채권 발생 |
|
|
| step-31 | 악성 채권 정보 섹션 - 악성채권 종료일 입력 | - | Input not found: 악성채권 종료일 입력 필드 [context: btn:60,input:1,text:not-on-page]; Input not found: 악성채권 종료 |
|
|
| step-33 | 이동 버튼 - 수취 어음 현황 클릭 | - | Element not found: 수취 어음 현황 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-36 | 이동 버튼 - 거래처 미수금 현황 클릭 | - | Element not found: 거래처 미수금 현황 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-40 | 메모 섹션 - 메모 입력 | - | Input not found: 메모 입력 Textarea [context: btn:60,input:1,text:not-on-page]; Input not found: 메모 입력 T |
|
|
| step-41 | 메모 섹션 - 메모 추가 버튼 클릭 | - | Element not found: 메모 추가 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-43 | 메모 섹션 - 추가 메모 입력 | - | Input not found: 메모 입력 Textarea [context: btn:60,input:1,text:not-on-page]; Input not found: 메모 입력 T |
|
|
| step-45 | 메모 섹션 - 메모 삭제 | - | Element not found: 첫 번째 메모 삭제 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-46 | 저장 버튼 클릭 | - | Element not found: 저장 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-47 | 저장 확인 다이얼로그 - 취소 버튼 | - | Element not found: 다이얼로그 취소 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
| step-48 | 저장 버튼 재클릭 및 확인 | - | Element not found: 저장 버튼 [context: btn:60,input:1,text:not-on-page]; Element not found: 다이얼로그 저장 버튼 |
|
|
| step-50 | 목록으로 돌아가기 | - | Element not found: 뒤로가기 버튼 [context: btn:60,input:1,text:not-on-page] |
|
|
|
|
## 전체 스텝 결과
|
|
| # | 스텝 | Phase | 상태 | 소요시간 | 비고 |
|
|
|---|------|-------|------|---------|------|
|
|
| step-0 | 사이드바 초기화 | - | ✅ | 514ms | eval_type:undefined/isPromise:false/val:undefined / Waited 500ms |
|
|
| step-1 | 2단계 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ❌ | 10488ms | Found: 회계관리 / Clicked: 회계관리 / Waited 500ms / scrollAndFind: "악성채권추심관리" not found |
|
|
| step-2 | 페이지 구조 확인 | - | ⚠️ | 1513ms | Element not found: 페이지 구조 |
|
|
| step-3 | 필터 및 검색 기능 테스트 | - | ❌ | 4031ms | Select not found: 상태 필터 [context: btn:60,input:1,text:not-on-page] / Waited 1000 |
|
|
| step-4 | 체크박스 선택 전 작업 버튼 확인 | - | ⚠️ | 1514ms | Element not found: 작업 컬럼 |
|
|
| step-5 | 첫 번째 행 체크박스 선택 | - | ❌ | 2529ms | Element not found: 첫 번째 행 체크박스 [context: btn:60,input:1,text:not-on-page] / Wait |
|
|
| step-6 | 수정 버튼 표시 확인 | - | ⚠️ | 1504ms | Element not found: 작업 컬럼 버튼 |
|
|
| step-7 | 수정 버튼 클릭 | - | ❌ | 2544ms | Element not found: 수정 버튼 [context: btn:60,input:1,text:not-on-page] / Waited 100 |
|
|
| step-8 | 수정 페이지 구조 확인 | - | ⚠️ | 1509ms | Element not found: 페이지 섹션 및 버튼 |
|
|
| step-9 | 기본 정보 섹션 - 사업자등록번호 (읽기전용) | - | ⚠️ | 1534ms | Element not found: 사업자등록번호 필드 |
|
|
| step-10 | 기본 정보 섹션 - 거래처 코드 (읽기전용) | - | ⚠️ | 1521ms | Element not found: 거래처 코드 필드 |
|
|
| step-11 | 기본 정보 섹션 - 거래처명 입력 | - | ❌ | 3036ms | Input not found: 거래처명 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input n |
|
|
| step-12 | 기본 정보 섹션 - 대표자명 입력 | - | ❌ | 3029ms | Input not found: 대표자명 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input n |
|
|
| step-13 | 기본 정보 섹션 - 악성채권 등록 토글 | - | ❌ | 2523ms | Element not found: 악성채권 등록 Switch [context: btn:60,input:1,text:not-on-page] / W |
|
|
| step-14 | 기본 정보 섹션 - 업태/업종 입력 | - | ❌ | 6056ms | Input not found: 업태 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input not |
|
|
| step-15 | 연락처 정보 섹션 - 우편번호 찾기 버튼 | - | ❌ | 2519ms | Element not found: 우편번호 찾기 버튼 [context: btn:60,input:1,text:not-on-page] / Waite |
|
|
| step-16 | 연락처 정보 섹션 - 주소 입력 | - | ❌ | 3029ms | Unknown action type: escape / Input not found: 상세주소 입력 필드 [context: btn:60,input |
|
|
| step-17 | 연락처 정보 섹션 - 전화번호 입력 | - | ❌ | 3010ms | Input not found: 전화번호 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input n |
|
|
| step-18 | 연락처 정보 섹션 - 모바일 입력 | - | ❌ | 3017ms | Input not found: 모바일 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input no |
|
|
| step-19 | 연락처 정보 섹션 - 팩스 입력 | - | ❌ | 3027ms | Input not found: 팩스 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input not |
|
|
| step-20 | 연락처 정보 섹션 - 이메일 입력 | - | ❌ | 3031ms | Input not found: 이메일 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input no |
|
|
| step-21 | 담당자 정보 섹션 - 담당자명 입력 | - | ❌ | 3035ms | Input not found: 담당자명 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input n |
|
|
| step-22 | 담당자 정보 섹션 - 담당자 전화 입력 | - | ❌ | 3031ms | Input not found: 담당자 전화 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input |
|
|
| step-23 | 필요 서류 섹션 - 사업자등록증 업로드 확인 | - | ⚠️ | 1513ms | Element not found: 사업자등록증 파일 입력 |
|
|
| step-24 | 필요 서류 섹션 - 세금계산서 업로드 확인 | - | ⚠️ | 1521ms | Element not found: 세금계산서 파일 입력 |
|
|
| step-25 | 필요 서류 섹션 - 추가 서류 추가 버튼 확인 | - | ⚠️ | 1516ms | Element not found: 추가 서류 추가 버튼 |
|
|
| step-26 | 악성 채권 정보 섹션 - 미수금 입력 | - | ❌ | 3028ms | Input not found: 미수금 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input no |
|
|
| step-27 | 악성 채권 정보 섹션 - 상태 선택 | - | ❌ | 3043ms | Element not found: 상태 드롭다운 [context: btn:60,input:1,text:not-on-page] / Select n |
|
|
| step-28 | 악성 채권 정보 섹션 - 연체일수 입력 | - | ❌ | 3036ms | Input not found: 연체일수 입력 필드 [context: btn:60,input:1,text:not-on-page] / Input n |
|
|
| step-29 | 악성 채권 정보 섹션 - 본사 담당자 선택 | - | ❌ | 3031ms | Element not found: 본사 담당자 드롭다운 [context: btn:60,input:1,text:not-on-page] / Sele |
|
|
| step-30 | 악성 채권 정보 섹션 - 악성채권 발생일 입력 | - | ❌ | 3023ms | Input not found: 악성채권 발생일 입력 필드 [context: btn:60,input:1,text:not-on-page] / Inp |
|
|
| step-31 | 악성 채권 정보 섹션 - 악성채권 종료일 입력 | - | ❌ | 3024ms | Input not found: 악성채권 종료일 입력 필드 [context: btn:60,input:1,text:not-on-page] / Inp |
|
|
| step-32 | 이동 버튼 - 수취 어음 현황 버튼 확인 | - | ⚠️ | 1531ms | Element not found: 수취 어음 현황 버튼 |
|
|
| step-33 | 이동 버튼 - 수취 어음 현황 클릭 | - | ❌ | 2535ms | Element not found: 수취 어음 현황 버튼 [context: btn:60,input:1,text:not-on-page] / Wait |
|
|
| step-34 | 이동 후 뒤로가기 (수취 어음 현황 → 대손채권회수 수정) | - | ⚠️ | 1003ms | Unknown action type: back / Waited 1000ms |
|
|
| step-35 | 이동 버튼 - 거래처 미수금 현황 버튼 확인 | - | ⚠️ | 1515ms | Element not found: 거래처 미수금 현황 버튼 |
|
|
| step-36 | 이동 버튼 - 거래처 미수금 현황 클릭 | - | ❌ | 2520ms | Element not found: 거래처 미수금 현황 버튼 [context: btn:60,input:1,text:not-on-page] / Wa |
|
|
| step-37 | 이동 후 뒤로가기 (거래처 미수금 현황 → 대손채권회수 수정) | - | ⚠️ | 1007ms | Unknown action type: back / Waited 1000ms |
|
|
| step-38 | 메모 섹션 - 메모 입력 필드 확인 | - | ⚠️ | 1517ms | Element not found: 메모 입력 Textarea |
|
|
| step-39 | 메모 섹션 - 메모 추가 버튼 확인 | - | ⚠️ | 1511ms | Element not found: 메모 추가 버튼 |
|
|
| step-40 | 메모 섹션 - 메모 입력 | - | ❌ | 3051ms | Input not found: 메모 입력 Textarea [context: btn:60,input:1,text:not-on-page] / Inp |
|
|
| step-41 | 메모 섹션 - 메모 추가 버튼 클릭 | - | ❌ | 2525ms | Element not found: 메모 추가 버튼 [context: btn:60,input:1,text:not-on-page] / Waited |
|
|
| step-42 | 메모 섹션 - 추가된 메모 확인 | - | ⚠️ | 1536ms | Element not found: 메모 리스트 |
|
|
| step-43 | 메모 섹션 - 추가 메모 입력 | - | ❌ | 5582ms | Input not found: 메모 입력 Textarea [context: btn:60,input:1,text:not-on-page] / Inp |
|
|
| step-44 | 메모 섹션 - 메모 삭제 버튼 확인 | - | ⚠️ | 1508ms | Element not found: 메모 삭제 버튼 |
|
|
| step-45 | 메모 섹션 - 메모 삭제 | - | ❌ | 2519ms | Element not found: 첫 번째 메모 삭제 버튼 [context: btn:60,input:1,text:not-on-page] / Wa |
|
|
| step-46 | 저장 버튼 클릭 | - | ❌ | 2535ms | Element not found: 저장 버튼 [context: btn:60,input:1,text:not-on-page] / Waited 100 |
|
|
| step-47 | 저장 확인 다이얼로그 - 취소 버튼 | - | ❌ | 2534ms | Element not found: 다이얼로그 취소 버튼 [context: btn:60,input:1,text:not-on-page] / Wait |
|
|
| step-48 | 저장 버튼 재클릭 및 확인 | - | ❌ | 5057ms | Element not found: 저장 버튼 [context: btn:60,input:1,text:not-on-page] / Waited 100 |
|
|
| step-49 | 상세 페이지 확인 | - | ⚠️ | 1514ms | Element not found: 페이지 모드 및 버튼 |
|
|
| step-50 | 목록으로 돌아가기 | - | ❌ | 2526ms | Element not found: 뒤로가기 버튼 [context: btn:60,input:1,text:not-on-page] / Waited 1 |
|
|
|
|
## API 요약
|
|
| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) |
|
|
|---------|------|------|----------|--------------|
|
|
| 8 | 8 | 0 | 104ms | 0 |
|
|
|
|
## 페이지 건강 검사
|
|
| 항목 | 결과 |
|
|
|------|------|
|
|
| 상태 | ✅ 정상 |
|
|
| URL | https://dev.codebridge-x.com/accounting/bad-debt-collection |
|
|
|
|
## 자동 진단
|
|
| 항목 | 내용 |
|
|
|------|------|
|
|
| 근본 원인 | **unknown** |
|
|
| 스크린샷 | diag_bad-debt-collection_2026-03-07_21-08-02.png |
|
|
|
|
### 페이지 상태
|
|
| 항목 | 값 |
|
|
|------|----|
|
|
| DOM 노드 | 800 |
|
|
| 테이블 행 | 5 |
|
|
| API 호출 수 | 8 |
|
|
| 로딩 스피너 | No |
|