# ❌ E2E 테스트 실패: 설정 - 팝업관리 **테스트 ID**: popup-management | **실행**: 2026-03-07_21-31-32 | **결과**: FAIL **소요 시간**: 138.8초 ## 테스트 요약 | 전체 | 성공 | 실패 | 경고 | 성공률 | |------|------|------|------|--------| | 89 | 5 | 19 | 65 | 6% | ## 실패 스텝 | # | 스텝 | Phase | 에러 | |---|------|-------|------| | 9 | 검색 기능 - 제목으로 검색 | - | Input not found: textbox '제목, 작성자로 검색...' [context: btn:45,input:1,text:not-on-page] | | 11 | 검색어 초기화 | - | Input not found: textbox '제목, 작성자로 검색...' [context: btn:45,input:1,text:not-on-page] | | 13 | 팝업 등록 페이지 이동 | - | Element not found: button '팝업 등록' [context: btn:45,input:1,text:found-on-page] | | 18 | 대상 Combobox 클릭 | - | Element not found: combobox (대상) [context: btn:45,input:1,text:found-on-page] | | 20 | 대상 '부서별' 선택 | - | Element not found: option '부서별' [context: btn:45,input:1,text:found-on-page] | | 24 | 제목 입력 | - | Input not found: textbox '제목 *' [context: btn:45,input:1,text:found-on-page] | | 27 | 내용 입력 | - | Input not found: editor content area [context: btn:45,input:1] | | 30 | 상태 '사용함' 선택 | - | Element not found: radio '사용함' [context: btn:45,input:1,text:found-on-page] | | 36 | 등록 버튼 클릭 | - | Element not found: button '등록' [context: btn:45,input:1,text:found-on-page] | | 41 | 첫 번째 팝업 행 클릭 | - | Element not found: row (첫 번째 팝업) [context: btn:45,input:1,text:not-on-page] | | 56 | 수정 페이지 이동 | - | Element not found: button '수정' [context: btn:45,input:1,text:not-on-page] | | 63 | 제목 수정 | - | Input not found: textbox '제목 *' [context: btn:45,input:1,text:found-on-page] | | 64 | 내용 수정 | - | Input not found: editor content area [context: btn:45,input:1] | | 65 | 상태 변경 - 사용안함 선택 | - | Element not found: radio '사용안함' [context: btn:45,input:1,text:found-on-page] | | 68 | 저장 버튼 클릭 | - | Element not found: button '저장' [context: btn:45,input:1,text:not-on-page] | | 75 | 목록으로 이동 | - | Element not found: button '목록으로' [context: btn:45,input:1,text:not-on-page] | | 80 | 삭제 테스트 - 팝업 상세 페이지 이동 | - | Element not found: row (수정한 팝업) [context: btn:75,input:1,text:not-on-page] | | 81 | 삭제 버튼 클릭 | - | Element not found: button '삭제' [context: btn:75,input:1,text:not-on-page] | | 83 | 삭제 확인 | - | Element not found: button '확인' (dialog) [context: btn:75,input:1,text:not-on-page] | ## 전체 스텝 결과 | # | 스텝 | Phase | 상태 | 소요시간 | 비고 | |---|------|-------|------|---------|------| | 0 | 사이드바 준비 | - | ✅ | 507ms | eval_type:undefined/isPromise:false/val:undefined / Waited 500ms | | 1 | 2단계 메뉴 진입: 설정 > 팝업관리 | - | ✅ | 2777ms | Found: 설정 / Clicked: 설정 / Waited 500ms / Found: 팝업관리 / Clicked: 팝업관리 / Waited 10 | | 2 | 페이지 제목 확인 | - | ⚠️ | 1517ms | Element not found: heading '팝업관리' | | 3 | 페이지 설명 확인 | - | ⚠️ | 1520ms | Element not found: paragraph '팝업 목록을 관리합니다.' | | 4 | 팝업 등록 버튼 확인 | - | ⚠️ | 1519ms | Element not found: button '팝업 등록' | | 5 | 검색 입력 필드 확인 | - | ⚠️ | 1515ms | Element not found: textbox '제목, 작성자로 검색...' | | 6 | 테이블 헤더 확인 | - | ⚠️ | 1516ms | Element not found: table headers | | 7 | 테이블 데이터 행 확인 | - | ⚠️ | 1510ms | Element not found: table rows | | 8 | 전체 항목 수 표시 확인 | - | ⚠️ | 1513ms | Element not found: text '전체 8개 중 1-8개 표시' | | 9 | 검색 기능 - 제목으로 검색 | - | ❌ | 1516ms | Input not found: textbox '제목, 작성자로 검색...' [context: btn:45,input:1,text:not-on-p | | 10 | 검색 결과 확인 | - | ⚠️ | 1519ms | Element not found: table rows | | 11 | 검색어 초기화 | - | ❌ | 1519ms | Input not found: textbox '제목, 작성자로 검색...' [context: btn:45,input:1,text:not-on-p | | 12 | 전체 목록 재표시 확인 | - | ⚠️ | 1517ms | Element not found: table rows | | 13 | 팝업 등록 페이지 이동 | - | ❌ | 1505ms | Element not found: button '팝업 등록' [context: btn:45,input:1,text:found-on-page] | | 14 | 등록 페이지 URL 확인 | - | ⚠️ | 1514ms | Element not found: url | | 15 | 등록 페이지 제목 확인 | - | ⚠️ | 1520ms | Element not found: heading '팝업관리 상세' | | 16 | 팝업 정보 섹션 확인 | - | ⚠️ | 1519ms | Element not found: heading '팝업 정보 *' | | 17 | 대상 Combobox 확인 | - | ⚠️ | 1517ms | Element not found: combobox (대상) | | 18 | 대상 Combobox 클릭 | - | ❌ | 1517ms | Element not found: combobox (대상) [context: btn:45,input:1,text:found-on-page] | | 19 | 대상 옵션 확인 | - | ⚠️ | 1518ms | Element not found: combobox options | | 20 | 대상 '부서별' 선택 | - | ❌ | 1504ms | Element not found: option '부서별' [context: btn:45,input:1,text:found-on-page] | | 21 | 기간 시작일 필드 확인 | - | ⚠️ | 1517ms | Element not found: textbox (기간 시작일) | | 22 | 기간 종료일 필드 확인 | - | ⚠️ | 1517ms | Element not found: textbox (기간 종료일) | | 23 | 제목 필드 확인 | - | ⚠️ | 1519ms | Element not found: textbox '제목 *' | | 24 | 제목 입력 | - | ❌ | 1512ms | Input not found: textbox '제목 *' [context: btn:45,input:1,text:found-on-page] | | 25 | 내용 편집기 확인 | - | ⚠️ | 1521ms | Element not found: editor toolbar | | 26 | 내용 입력 영역 확인 | - | ⚠️ | 1506ms | Element not found: paragraph '내용을 입력해주세요' | | 27 | 내용 입력 | - | ❌ | 1527ms | Input not found: editor content area [context: btn:45,input:1] | | 28 | 상태 Radio 버튼 확인 | - | ⚠️ | 1514ms | Element not found: radiogroup (상태) | | 29 | 기본 상태 확인 | - | ⚠️ | 1511ms | Element not found: radio '사용안함' | | 30 | 상태 '사용함' 선택 | - | ❌ | 1519ms | Element not found: radio '사용함' [context: btn:45,input:1,text:found-on-page] | | 31 | 작성자 필드 확인 | - | ⚠️ | 1513ms | Element not found: textbox (작성자) [disabled] | | 32 | 등록일시 필드 확인 | - | ⚠️ | 1521ms | Element not found: textbox (등록일시) [disabled] | | 33 | 취소 버튼 확인 | - | ⚠️ | 1521ms | Element not found: button '취소' | | 34 | 등록 버튼 확인 | - | ⚠️ | 1513ms | Element not found: button '등록' | | 35 | 등록 전 URL 저장 | - | ✅ | 0ms | Saved URL → saved_url | | 36 | 등록 버튼 클릭 | - | ❌ | 1523ms | Element not found: button '등록' [context: btn:45,input:1,text:found-on-page] | | 37 | 등록 후 URL 확인 | - | ⚠️ | 1504ms | Element not found: url | | 38 | 등록 성공 토스트 확인 | - | ⚠️ | 1520ms | Element not found: toast message | | 39 | 등록 API 호출 확인 | - | ⚠️ | 1508ms | Element not found: network request | | 40 | 신규 팝업 목록 확인 | - | ⚠️ | 1513ms | Element not found: table rows | | 41 | 첫 번째 팝업 행 클릭 | - | ❌ | 1509ms | Element not found: row (첫 번째 팝업) [context: btn:45,input:1,text:not-on-page] | | 42 | 상세 페이지 URL 확인 | - | ⚠️ | 1505ms | Element not found: url | | 43 | 상세 페이지 제목 확인 | - | ⚠️ | 1511ms | Element not found: heading '팝업관리 상세' | | 44 | 팝업 정보 섹션 확인 | - | ⚠️ | 1511ms | Element not found: heading '팝업 정보' | | 45 | 상태 뱃지 확인 | - | ⚠️ | 1531ms | Element not found: badge (상태) | | 46 | 대상 정보 확인 | - | ⚠️ | 1510ms | Element not found: definition (대상) | | 47 | 작성자 정보 확인 | - | ⚠️ | 1512ms | Element not found: definition (작성자) | | 48 | 제목 정보 확인 | - | ⚠️ | 1522ms | Element not found: definition (제목) | | 49 | 상태 정보 확인 | - | ⚠️ | 1515ms | Element not found: definition (상태) | | 50 | 기간 정보 확인 | - | ⚠️ | 1520ms | Element not found: definition (기간) | | 51 | 등록일시 정보 확인 | - | ⚠️ | 1515ms | Element not found: definition (등록일시) | | 52 | 내용 정보 확인 | - | ⚠️ | 1516ms | Element not found: definition (내용) | | 53 | 목록으로 버튼 확인 | - | ⚠️ | 1514ms | Element not found: button '목록으로' | | 54 | 삭제 버튼 확인 | - | ⚠️ | 1508ms | Element not found: button '삭제' | | 55 | 수정 버튼 확인 | - | ⚠️ | 1523ms | Element not found: button '수정' | | 56 | 수정 페이지 이동 | - | ❌ | 1515ms | Element not found: button '수정' [context: btn:45,input:1,text:not-on-page] | | 57 | 수정 페이지 URL 확인 | - | ⚠️ | 1515ms | Element not found: url | | 58 | 수정 페이지 제목 확인 | - | ⚠️ | 1513ms | Element not found: heading '팝업관리 상세' | | 59 | 기존 데이터 로드 확인 - 대상 | - | ⚠️ | 1524ms | Element not found: combobox (대상) | | 60 | 기존 데이터 로드 확인 - 제목 | - | ⚠️ | 1518ms | Element not found: textbox '제목 *' | | 61 | 기존 데이터 로드 확인 - 내용 | - | ⚠️ | 1512ms | Element not found: editor content area | | 62 | 기존 데이터 로드 확인 - 상태 | - | ⚠️ | 1523ms | Element not found: radio '사용함' | | 63 | 제목 수정 | - | ❌ | 1520ms | Input not found: textbox '제목 *' [context: btn:45,input:1,text:found-on-page] | | 64 | 내용 수정 | - | ❌ | 1519ms | Input not found: editor content area [context: btn:45,input:1] | | 65 | 상태 변경 - 사용안함 선택 | - | ❌ | 1529ms | Element not found: radio '사용안함' [context: btn:45,input:1,text:found-on-page] | | 66 | 저장 버튼 확인 | - | ⚠️ | 1521ms | Element not found: button '저장' | | 67 | 저장 전 URL 저장 | - | ✅ | 0ms | Saved URL → saved_url | | 68 | 저장 버튼 클릭 | - | ❌ | 1521ms | Element not found: button '저장' [context: btn:45,input:1,text:not-on-page] | | 69 | 저장 후 URL 확인 | - | ⚠️ | 1506ms | Element not found: url | | 70 | 저장 성공 토스트 확인 | - | ⚠️ | 1507ms | Element not found: toast message | | 71 | 수정 API 호출 확인 | - | ⚠️ | 1514ms | Element not found: network request | | 72 | 수정된 데이터 확인 - 제목 | - | ⚠️ | 1512ms | Element not found: definition (제목) | | 73 | 수정된 데이터 확인 - 내용 | - | ⚠️ | 1509ms | Element not found: definition (내용) | | 74 | 수정된 데이터 확인 - 상태 | - | ⚠️ | 1512ms | Element not found: definition (상태) | | 75 | 목록으로 이동 | - | ❌ | 1516ms | Element not found: button '목록으로' [context: btn:45,input:1,text:not-on-page] | | 76 | 목록 페이지 URL 확인 | - | ⚠️ | 1513ms | Element not found: url | | 77 | 수정된 팝업 목록 확인 | - | ⚠️ | 1508ms | Element not found: table rows | | 78 | 페이지 새로고침 | - | ✅ | 1ms | Page reload | | 79 | 새로고침 후 데이터 유지 확인 | - | ⚠️ | 1519ms | Element not found: table rows | | 80 | 삭제 테스트 - 팝업 상세 페이지 이동 | - | ❌ | 1514ms | Element not found: row (수정한 팝업) [context: btn:75,input:1,text:not-on-page] | | 81 | 삭제 버튼 클릭 | - | ❌ | 1514ms | Element not found: button '삭제' [context: btn:75,input:1,text:not-on-page] | | 82 | 삭제 확인 다이얼로그 확인 | - | ⚠️ | 1515ms | Element not found: dialog | | 83 | 삭제 확인 | - | ❌ | 1521ms | Element not found: button '확인' (dialog) [context: btn:75,input:1,text:not-on-pag | | 84 | 삭제 후 URL 확인 | - | ⚠️ | 1515ms | Element not found: url | | 85 | 삭제 성공 토스트 확인 | - | ⚠️ | 1504ms | Element not found: toast message | | 86 | 삭제 API 호출 확인 | - | ⚠️ | 1517ms | Element not found: network request | | 87 | 삭제된 팝업 목록에서 제거 확인 | - | ⚠️ | 1518ms | Element not found: table rows | | 88 | 전체 항목 수 갱신 확인 | - | ⚠️ | 1529ms | Element not found: text (전체 항목 수) | ## API 요약 | 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | |---------|------|------|----------|--------------| | 0 | 0 | 0 | 0ms | 0 | ## 페이지 건강 검사 | 항목 | 결과 | |------|------| | 상태 | ✅ 정상 | | URL | https://dev.codebridge-x.com/settings/popup-management | ## 자동 진단 | 항목 | 내용 | |------|------| | 근본 원인 | **unknown** | | 스크린샷 | diag_popup-management_2026-03-07_21-31-32.png | ### 페이지 상태 | 항목 | 값 | |------|----| | DOM 노드 | 902 | | 테이블 행 | 9 | | API 호출 수 | 0 | | 로딩 스피너 | No |