120 lines
9.6 KiB
Markdown
120 lines
9.6 KiB
Markdown
|
|
# ❌ E2E 테스트 실패: 매출관리 테스트
|
||
|
|
|
||
|
|
**테스트 ID**: sales-management | **실행**: 2026-03-07_21-37-02 | **결과**: FAIL
|
||
|
|
**소요 시간**: 69.5초
|
||
|
|
|
||
|
|
## 테스트 요약
|
||
|
|
| 전체 | 성공 | 실패 | 경고 | 성공률 |
|
||
|
|
|------|------|------|------|--------|
|
||
|
|
| 53 | 24 | 24 | 5 | 45% |
|
||
|
|
|
||
|
|
## 실패 스텝
|
||
|
|
| # | 스텝 | Phase | 에러 |
|
||
|
|
|---|------|-------|------|
|
||
|
|
| 1 | 로그인 | - | fill_form: no fields filled (0 not found) [context: btn:241,input:1] |
|
||
|
|
| 6 | 계정과목명 드롭박스 옵션 확인 | - | Dropdown trigger not found: accountSubject [context: btn:205,input:1] |
|
||
|
|
| 7 | 체크박스 선택 (계정과목 저장용) | - | Checkbox not found: first_row [context: btn:205,input:1] |
|
||
|
|
| 8 | 계정과목 변경 - 제품매출 선택 | - | Dropdown trigger not found: accountSubject [context: btn:205,input:1] |
|
||
|
|
| 10 | 저장 확인 다이얼로그 - 확인 클릭 | - | No dialog found |
|
||
|
|
| 15 | 거래처명 드롭박스 클릭 | - | Dropdown trigger not found: vendorId [context: btn:30,input:5] |
|
||
|
|
| 16 | 거래처명 선택 | - | Dropdown trigger not found: vendorId [context: btn:30,input:5] |
|
||
|
|
| 17 | 매출유형 드롭박스 확인 | - | Dropdown trigger not found: salesType [context: btn:30,input:5] |
|
||
|
|
| 18 | 매출유형 선택 - 제품매출 | - | Dropdown trigger not found: salesType [context: btn:30,input:5] |
|
||
|
|
| 20 | 품목 동적 추가 - 추가 버튼 클릭 | - | Button "품목 추가" not found [context: btn:30,input:5,text:not-on-page] |
|
||
|
|
| 22 | 품목 동적 삭제 - 두 번째 행 삭제 | - | Button "remove_item_row_2" not found [context: btn:30,input:5] |
|
||
|
|
| 24 | 품목명 입력 | - | Input not found: items[0].itemName [context: btn:30,input:5] |
|
||
|
|
| 25 | 수량 입력 | - | Input not found: items[0].quantity [context: btn:30,input:5] |
|
||
|
|
| 26 | 단가 입력 | - | Input not found: items[0].unitPrice [context: btn:30,input:5] |
|
||
|
|
| 29 | 적요 입력 (선택사항) | - | Input not found: items[0].note [context: btn:30,input:5] |
|
||
|
|
| 31 | 세금계산서 발행 Switch ON | - | Checkbox not found: taxInvoiceSwitch [context: btn:30,input:5] |
|
||
|
|
| 32 | 세금계산서 발행 Switch OFF | - | Checkbox not found: taxInvoiceSwitch [context: btn:30,input:5] |
|
||
|
|
| 34 | 거래명세서 발행 Switch ON | - | Checkbox not found: transactionStatementSwitch [context: btn:30,input:5] |
|
||
|
|
| 35 | 거래명세서 발행 Switch OFF | - | Checkbox not found: transactionStatementSwitch [context: btn:30,input:5] |
|
||
|
|
| 40 | 등록 테스트용 데이터 입력 - 거래처 선택 | - | Dropdown trigger not found: vendorId [context: btn:30,input:5] |
|
||
|
|
| 41 | 등록 테스트용 데이터 입력 - 매출유형 | - | Dropdown trigger not found: salesType [context: btn:30,input:5] |
|
||
|
|
| 42 | 등록 테스트용 데이터 입력 - 품목명 | - | Input not found: items[0].itemName [context: btn:30,input:5] |
|
||
|
|
| 43 | 등록 테스트용 데이터 입력 - 수량 | - | Input not found: items[0].quantity [context: btn:30,input:5] |
|
||
|
|
| 44 | 등록 테스트용 데이터 입력 - 단가 | - | Input not found: items[0].unitPrice [context: btn:30,input:5] |
|
||
|
|
|
||
|
|
## 전체 스텝 결과
|
||
|
|
| # | 스텝 | Phase | 상태 | 소요시간 | 비고 |
|
||
|
|
|---|------|-------|------|---------|------|
|
||
|
|
| 0 | 사이드바 초기화 | - | ✅ | 509ms | eval_type:undefined/isPromise:false/val:undefined / Waited 500ms |
|
||
|
|
| 1 | 로그인 | - | ❌ | 1525ms | fill_form: no fields filled (0 not found) [context: btn:241,input:1] |
|
||
|
|
| 2 | 2단계 메뉴 진입: 회계관리 > 매출관리 | - | ⚠️ | 13646ms | scrollAndFind: "undefined" not found after 10 scrolls / Clicked: 회계관리 / Waited 5 |
|
||
|
|
| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 205 buttons |
|
||
|
|
| 4 | 목록 페이지 - 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 20 rows |
|
||
|
|
| 5 | 계정과목명 드롭박스 확인 | - | ✅ | 1ms | Checks: 2/3 verified |
|
||
|
|
| 6 | 계정과목명 드롭박스 옵션 확인 | - | ❌ | 1518ms | Dropdown trigger not found: accountSubject [context: btn:205,input:1] |
|
||
|
|
| 7 | 체크박스 선택 (계정과목 저장용) | - | ❌ | 1518ms | Checkbox not found: first_row [context: btn:205,input:1] |
|
||
|
|
| 8 | 계정과목 변경 - 제품매출 선택 | - | ❌ | 1518ms | Dropdown trigger not found: accountSubject [context: btn:205,input:1] |
|
||
|
|
| 9 | 필수 검증 #2: 계정과목 저장 버튼 클릭 | - | ✅ | 306ms | Clicked button: 저장 |
|
||
|
|
| 10 | 저장 확인 다이얼로그 - 확인 클릭 | - | ❌ | 2446ms | No dialog found |
|
||
|
|
| 10-1 | ⚠️ 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 0ms | Data found: "" |
|
||
|
|
| 11 | 매출 등록 버튼 클릭 | - | ✅ | 305ms | Clicked button: 매출 등록 |
|
||
|
|
| 12 | 매출 등록 페이지 - URL 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/sales?mode=new |
|
||
|
|
| 13 | 매출 등록 페이지 - 기본정보 섹션 확인 | - | ✅ | 0ms | Checks: 3/4 verified |
|
||
|
|
| 14 | 매출번호 자동생성 확인 | - | ⚠️ | 1514ms | Element not found: salesNo |
|
||
|
|
| 15 | 거래처명 드롭박스 클릭 | - | ❌ | 1511ms | Dropdown trigger not found: vendorId [context: btn:30,input:5] |
|
||
|
|
| 16 | 거래처명 선택 | - | ❌ | 1513ms | Dropdown trigger not found: vendorId [context: btn:30,input:5] |
|
||
|
|
| 17 | 매출유형 드롭박스 확인 | - | ❌ | 1511ms | Dropdown trigger not found: salesType [context: btn:30,input:5] |
|
||
|
|
| 18 | 매출유형 선택 - 제품매출 | - | ❌ | 1512ms | Dropdown trigger not found: salesType [context: btn:30,input:5] |
|
||
|
|
| 19 | 품목정보 섹션 확인 | - | ✅ | 1ms | Checks: 4/4 verified |
|
||
|
|
| 20 | 품목 동적 추가 - 추가 버튼 클릭 | - | ❌ | 1508ms | Button "품목 추가" not found [context: btn:30,input:5,text:not-on-page] |
|
||
|
|
| 21 | 품목 행 개수 확인 (2개) | - | ✅ | 0ms | Table: 8 cols, 2 rows |
|
||
|
|
| 22 | 품목 동적 삭제 - 두 번째 행 삭제 | - | ❌ | 1523ms | Button "remove_item_row_2" not found [context: btn:30,input:5] |
|
||
|
|
| 23 | 품목 행 개수 확인 (1개) | - | ✅ | 0ms | Table: 8 cols, 2 rows |
|
||
|
|
| 24 | 품목명 입력 | - | ❌ | 1512ms | Input not found: items[0].itemName [context: btn:30,input:5] |
|
||
|
|
| 25 | 수량 입력 | - | ❌ | 1512ms | Input not found: items[0].quantity [context: btn:30,input:5] |
|
||
|
|
| 26 | 단가 입력 | - | ❌ | 1516ms | Input not found: items[0].unitPrice [context: btn:30,input:5] |
|
||
|
|
| 27 | 자동계산 검증 - 공급가액 | - | ✅ | 0ms | No text to verify |
|
||
|
|
| 28 | 자동계산 검증 - 부가세 | - | ✅ | 0ms | No text to verify |
|
||
|
|
| 29 | 적요 입력 (선택사항) | - | ❌ | 1513ms | Input not found: items[0].note [context: btn:30,input:5] |
|
||
|
|
| 30 | 세금계산서 발행 Switch 확인 | - | ⚠️ | 1521ms | Element not found: taxInvoice_section |
|
||
|
|
| 31 | 세금계산서 발행 Switch ON | - | ❌ | 1507ms | Checkbox not found: taxInvoiceSwitch [context: btn:30,input:5] |
|
||
|
|
| 32 | 세금계산서 발행 Switch OFF | - | ❌ | 1519ms | Checkbox not found: taxInvoiceSwitch [context: btn:30,input:5] |
|
||
|
|
| 33 | 거래명세서 발행 Switch 확인 | - | ⚠️ | 1514ms | Element not found: transactionStatement_section |
|
||
|
|
| 34 | 거래명세서 발행 Switch ON | - | ❌ | 1511ms | Checkbox not found: transactionStatementSwitch [context: btn:30,input:5] |
|
||
|
|
| 35 | 거래명세서 발행 Switch OFF | - | ❌ | 1507ms | Checkbox not found: transactionStatementSwitch [context: btn:30,input:5] |
|
||
|
|
| 36 | 합계 금액 확인 | - | ✅ | 0ms | No text to verify |
|
||
|
|
| 37 | 취소 버튼 동작 테스트 | - | ✅ | 302ms | Clicked button: 취소 |
|
||
|
|
| 38 | 취소 확인 - 목록 페이지 복귀 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/sales |
|
||
|
|
| 39 | 다시 매출 등록 페이지 진입 | - | ✅ | 302ms | Clicked button: 매출 등록 |
|
||
|
|
| 40 | 등록 테스트용 데이터 입력 - 거래처 선택 | - | ❌ | 1517ms | Dropdown trigger not found: vendorId [context: btn:30,input:5] |
|
||
|
|
| 41 | 등록 테스트용 데이터 입력 - 매출유형 | - | ❌ | 1528ms | Dropdown trigger not found: salesType [context: btn:30,input:5] |
|
||
|
|
| 42 | 등록 테스트용 데이터 입력 - 품목명 | - | ❌ | 1511ms | Input not found: items[0].itemName [context: btn:30,input:5] |
|
||
|
|
| 43 | 등록 테스트용 데이터 입력 - 수량 | - | ❌ | 1515ms | Input not found: items[0].quantity [context: btn:30,input:5] |
|
||
|
|
| 44 | 등록 테스트용 데이터 입력 - 단가 | - | ❌ | 1530ms | Input not found: items[0].unitPrice [context: btn:30,input:5] |
|
||
|
|
| 45 | 필수 검증 #2: 등록 버튼 클릭 | - | ✅ | 305ms | Clicked button: 등록 |
|
||
|
|
| 46 | 등록 성공 확인 - 토스트 메시지 | - | ⚠️ | 3051ms | No toast/notification found |
|
||
|
|
| 47 | 등록 성공 확인 - 목록 페이지 이동 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/sales?mode=new |
|
||
|
|
| 48 | 등록된 매출 목록 확인 | - | ✅ | 0ms | Table: 8 cols, 2 rows |
|
||
|
|
| 49 | 거래처 미선택 시 유효성 검증 테스트 | - | ✅ | 0ms | Navigate to /ko/accounting/sales?mode=new |
|
||
|
|
| 50 | 거래처 미선택 상태에서 등록 시도 | - | ✅ | 309ms | Clicked button: 등록 |
|
||
|
|
| 51 | 유효성 검증 메시지 확인 | - | ✅ | 515ms | Toast visible: "" |
|
||
|
|
|
||
|
|
## API 요약
|
||
|
|
| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) |
|
||
|
|
|---------|------|------|----------|--------------|
|
||
|
|
| 0 | 0 | 0 | 0ms | 0 |
|
||
|
|
|
||
|
|
## 페이지 건강 검사
|
||
|
|
| 항목 | 결과 |
|
||
|
|
|------|------|
|
||
|
|
| 상태 | ✅ 정상 |
|
||
|
|
| URL | https://dev.codebridge-x.com/accounting/sales |
|
||
|
|
|
||
|
|
## 자동 진단
|
||
|
|
| 항목 | 내용 |
|
||
|
|
|------|------|
|
||
|
|
| 근본 원인 | **unknown** |
|
||
|
|
| 스크린샷 | diag_sales-management_2026-03-07_21-37-02.png |
|
||
|
|
|
||
|
|
### 페이지 상태
|
||
|
|
| 항목 | 값 |
|
||
|
|
|------|----|
|
||
|
|
| DOM 노드 | 686 |
|
||
|
|
| 테이블 행 | 2 |
|
||
|
|
| API 호출 수 | 0 |
|
||
|
|
| 로딩 스피너 | No |
|