From c00aa195ca33ed23db2f0b831a42b7f777ed2319 Mon Sep 17 00:00:00 2001 From: kimbokon Date: Sun, 8 Mar 2026 16:04:40 +0900 Subject: [PATCH] =?UTF-8?q?test:=20E2E=20=EC=A0=84=EC=B2=B4=20=EC=9E=AC?= =?UTF-8?q?=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EA=B2=B0=EA=B3=BC=20(204=20?= =?UTF-8?q?=EC=8B=9C=EB=82=98=EB=A6=AC=EC=98=A4,=20193=20PASS=20/=2011=20F?= =?UTF-8?q?AIL,=2094.6%)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- E2E_FULL_TEST_SUMMARY_2026-03-08_16-00-42.md | 406 ++++++++++++++++++ ...-create-acc-deposit_2026-03-08_14-47-49.md | 65 +++ ...te-delete-acc-bills_2026-03-08_14-51-10.md | 51 +++ ...-delete-acc-deposit_2026-03-08_14-51-37.md | 54 +++ ...create-delete-board_2026-03-08_14-52-06.md | 55 +++ ...full-crud-acc-bills_2026-03-08_15-05-14.md | 69 +++ ...ll-crud-acc-deposit_2026-03-08_15-06-01.md | 76 ++++ ...full-crud-acc-sales_2026-03-08_15-06-49.md | 72 ++++ ...d-persist-acc-bills_2026-03-08_15-24-23.md | 57 +++ ...persist-acc-deposit_2026-03-08_15-25-07.md | 58 +++ ...d-persist-acc-sales_2026-03-08_15-25-48.md | 56 +++ Fail-sales-management_2026-03-08_15-27-55.md | 62 +++ .../OK-a11y-acc-client_2026-03-08_14-34-15.md | 28 ++ ...OK-a11y-acc-deposit_2026-03-08_14-34-27.md | 28 ++ ...K-a11y-acc-purchase_2026-03-08_14-34-38.md | 28 ++ .../OK-a11y-acc-sales_2026-03-08_14-34-51.md | 28 ++ ...K-a11y-approval-box_2026-03-08_14-35-02.md | 28 ++ ...a11y-approval-draft_2026-03-08_14-35-14.md | 28 ++ .../OK-a11y-board-free_2026-03-08_14-35-26.md | 28 ++ ...-a11y-hr-attendance_2026-03-08_14-35-39.md | 28 ++ ...-a11y-hr-department_2026-03-08_14-35-52.md | 28 ++ ...OK-a11y-hr-employee_2026-03-08_14-36-04.md | 28 ++ .../OK-a11y-hr-salary_2026-03-08_14-36-16.md | 28 ++ ...-material-receiving_2026-03-08_14-36-28.md | 28 ++ ...a11y-material-stock_2026-03-08_14-36-39.md | 28 ++ .../OK-a11y-prod-item_2026-03-08_14-36-51.md | 28 ++ ...11y-prod-work-order_2026-03-08_14-37-03.md | 28 ++ ...K-a11y-sales-client_2026-03-08_14-37-16.md | 28 ++ ...a11y-sales-estimate_2026-03-08_14-37-27.md | 28 ++ ...OK-a11y-sales-order_2026-03-08_14-37-40.md | 28 ++ ...accounting-bad-debt_2026-03-08_14-37-51.md | 48 +++ ...ng-bank-transaction_2026-03-08_14-38-01.md | 42 ++ .../OK-accounting-bill_2026-03-08_14-38-25.md | 48 +++ ...unting-card-history_2026-03-08_14-38-35.md | 42 ++ ...K-accounting-client_2026-03-08_14-38-53.md | 47 ++ ...unting-daily-report_2026-03-08_14-39-04.md | 34 ++ ...-accounting-deposit_2026-03-08_14-39-26.md | 49 +++ ...ng-expense-forecast_2026-03-08_14-39-36.md | 40 ++ ...ccounting-gift-card_2026-03-08_14-39-49.md | 35 ++ ...nting-journal-entry_2026-03-08_14-40-04.md | 36 ++ ...-accounting-payment_2026-03-08_14-40-19.md | 42 ++ ...accounting-purchase_2026-03-08_14-40-32.md | 40 ++ ...counting-receivable_2026-03-08_14-40-45.md | 43 ++ ...OK-accounting-sales_2026-03-08_14-40-57.md | 40 ++ ...ccounting-tax-issue_2026-03-08_14-41-09.md | 35 ++ ...accounting-tax-mgmt_2026-03-08_14-41-20.md | 35 ++ ...counting-withdrawal_2026-03-08_14-41-42.md | 49 +++ .../OK-api-health-acc_2026-03-08_14-42-28.md | 63 +++ ...pi-health-prod-misc_2026-03-08_14-43-15.md | 59 +++ ...api-health-sales-hr_2026-03-08_14-44-02.md | 59 +++ .../OK-approval-box_2026-03-08_14-44-28.md | 49 +++ ...-attendance-checkin_2026-03-08_14-44-41.md | 40 ++ ...tendance-management_2026-03-08_14-45-00.md | 49 +++ ...ch-create-acc-bills_2026-03-08_14-46-58.md | 63 +++ ...-batch-create-board_2026-03-08_14-49-23.md | 63 +++ ...pdate-account-sales_2026-03-08_14-49-50.md | 38 ++ ...OK-board-management_2026-03-08_14-50-01.md | 46 ++ success/OK-board-test_2026-03-08_14-50-17.md | 37 ++ .../OK-company-info_2026-03-08_14-50-40.md | 55 +++ ...le-data-consistency_2026-03-08_14-52-43.md | 49 +++ .../OK-customer-event_2026-03-08_14-53-00.md | 51 +++ .../OK-customer-faq_2026-03-08_14-53-12.md | 40 ++ .../OK-customer-notice_2026-03-08_14-53-29.md | 43 ++ .../OK-department-add_2026-03-08_14-53-37.md | 40 ++ ...-deposit-management_2026-03-08_14-53-54.md | 45 ++ ...etail-roundtrip-acc_2026-03-08_14-54-26.md | 47 ++ ...-roundtrip-hr-board_2026-03-08_14-54-52.md | 39 ++ ...ail-roundtrip-sales_2026-03-08_14-55-24.md | 47 ++ ...il-verify-acc-sales_2026-03-08_14-55-47.md | 36 ++ success/OK-draft-box_2026-03-08_14-56-00.md | 41 ++ ...-boundary-acc-sales_2026-03-08_14-56-23.md | 38 ++ ...ry-input-accounting_2026-03-08_14-56-47.md | 38 ++ ...e-boundary-input-hr_2026-03-08_14-57-10.md | 38 ++ ...oundary-input-sales_2026-03-08_14-57-33.md | 38 ++ ...oncurrent-action-hr_2026-03-08_14-57-47.md | 29 ++ ...y-submit-accounting_2026-03-08_14-58-06.md | 31 ++ ...-empty-submit-board_2026-03-08_14-58-25.md | 31 ++ ...dge-empty-submit-hr_2026-03-08_14-58-44.md | 31 ++ ...-empty-submit-sales_2026-03-08_14-59-03.md | 31 ++ ...boundary-accounting_2026-03-08_14-59-27.md | 37 ++ ...pid-click-acc-sales_2026-03-08_14-59-54.md | 34 ++ ...-rapid-click-delete_2026-03-08_15-00-10.md | 30 ++ ...id-click-save-board_2026-03-08_15-00-30.md | 31 ++ ...id-click-save-sales_2026-03-08_15-00-49.md | 31 ++ ...special-chars-board_2026-03-08_15-01-21.md | 38 ++ ...pecial-chars-search_2026-03-08_15-01-53.md | 38 ++ ...unicode-input-board_2026-03-08_15-02-14.md | 34 ++ ...form-validation-acc_2026-03-08_15-02-57.md | 44 ++ ...orm-validation-misc_2026-03-08_15-03-22.md | 37 ++ ...rm-validation-sales_2026-03-08_15-04-05.md | 44 ++ success/OK-free-board_2026-03-08_15-04-18.md | 46 ++ .../OK-full-crud-board_2026-03-08_15-07-53.md | 57 +++ ...hr-attendance-admin_2026-03-08_15-08-03.md | 38 ++ ...r-attendance-status_2026-03-08_15-08-14.md | 45 ++ .../OK-hr-department_2026-03-08_15-08-24.md | 38 ++ success/OK-hr-employee_2026-03-08_15-08-37.md | 46 ++ ...lary-long-term-care_2026-03-08_15-08-54.md | 40 ++ success/OK-hr-salary_2026-03-08_15-09-07.md | 47 ++ success/OK-hr-vacation_2026-03-08_15-09-31.md | 49 +++ ...-input-fields-acc-1_2026-03-08_15-10-46.md | 44 ++ ...-input-fields-acc-2_2026-03-08_15-11-46.md | 37 ++ ...ds-material-quality_2026-03-08_15-12-17.md | 37 ++ ...t-fields-production_2026-03-08_15-12-37.md | 37 ++ ...-input-fields-sales_2026-03-08_15-13-19.md | 44 ++ .../OK-item-management_2026-03-08_15-13-34.md | 40 ++ success/OK-item-master_2026-03-08_15-13-45.md | 38 ++ success/OK-login-test_2026-03-08_15-13-50.md | 37 ++ ...K-material-dispatch_2026-03-08_15-14-35.md | 47 ++ ...-material-receiving_2026-03-08_15-14-55.md | 49 +++ .../OK-material-stock_2026-03-08_15-15-05.md | 42 ++ ...ulti-item-acc-sales_2026-03-08_15-15-48.md | 46 ++ ...pagination-sort-acc_2026-03-08_15-16-28.md | 41 ++ ...-pagination-sort-hr_2026-03-08_15-16-55.md | 35 ++ ...gination-sort-sales_2026-03-08_15-17-32.md | 41 ++ ...K-pdf-download-test_2026-03-08_15-17-33.md | 29 ++ .../OK-perf-acc-client_2026-03-08_15-17-42.md | 45 ++ ...OK-perf-acc-deposit_2026-03-08_15-17-51.md | 29 ++ ...K-perf-acc-purchase_2026-03-08_15-18-00.md | 29 ++ .../OK-perf-acc-sales_2026-03-08_15-18-09.md | 29 ++ ...-perf-hr-attendance_2026-03-08_15-18-18.md | 29 ++ ...-perf-hr-department_2026-03-08_15-18-27.md | 29 ++ ...OK-perf-hr-employee_2026-03-08_15-18-36.md | 29 ++ .../OK-perf-hr-salary_2026-03-08_15-18-45.md | 29 ++ ...-material-receiving_2026-03-08_15-18-54.md | 29 ++ ...perf-material-stock_2026-03-08_15-19-03.md | 29 ++ .../OK-perf-prod-item_2026-03-08_15-19-12.md | 29 ++ ...erf-prod-work-order_2026-03-08_15-19-21.md | 29 ++ ...rf-prod-work-result_2026-03-08_15-19-30.md | 29 ++ ...K-perf-sales-client_2026-03-08_15-19-39.md | 29 ++ ...perf-sales-estimate_2026-03-08_15-19-48.md | 29 ++ ...OK-perf-sales-order_2026-03-08_15-19-57.md | 29 ++ ...OK-perf-sales-price_2026-03-08_15-20-06.md | 29 ++ ...roduction-dashboard_2026-03-08_15-20-19.md | 36 ++ .../OK-production-item_2026-03-08_15-20-30.md | 38 ++ ...oduction-work-order_2026-03-08_15-21-11.md | 54 +++ ...duction-work-result_2026-03-08_15-21-30.md | 47 ++ ...K-production-worker_2026-03-08_15-21-41.md | 38 ++ .../OK-purchase-order_2026-03-08_15-21-55.md | 36 ++ .../OK-purchase-price_2026-03-08_15-22-17.md | 35 ++ .../OK-purchase-status_2026-03-08_15-22-30.md | 33 ++ .../OK-purchase-vendor_2026-03-08_15-22-45.md | 35 ++ ...ality-certification_2026-03-08_15-22-54.md | 38 ++ ...-quality-inspection_2026-03-08_15-23-06.md | 41 ++ ...-performance-report_2026-03-08_15-23-16.md | 36 ++ .../OK-reference-box_2026-03-08_15-23-46.md | 64 +++ ...eload-persist-board_2026-03-08_15-26-44.md | 43 ++ .../OK-sales-client_2026-03-08_15-27-03.md | 47 ++ ...s-order-bulk-delete_2026-03-08_15-28-35.md | 44 ++ success/OK-sales-order_2026-03-08_15-29-23.md | 59 +++ .../OK-sales-pricing_2026-03-08_15-29-37.md | 50 +++ .../OK-sales-quotation_2026-03-08_15-30-23.md | 56 +++ .../OK-sales-site-mgmt_2026-03-08_15-30-38.md | 35 ++ ...OK-search-bug-draft_2026-03-08_15-31-03.md | 35 ++ ...K-search-bug-salary_2026-03-08_15-31-30.md | 34 ++ ...ch-filter-acc-sales_2026-03-08_15-32-03.md | 42 ++ ...search-function-acc_2026-03-08_15-32-55.md | 44 ++ ...function-audit-acc1_2026-03-08_15-33-38.md | 44 ++ ...ction-audit-acc2-hr_2026-03-08_15-34-15.md | 49 +++ ...nction-audit-boards_2026-03-08_15-34-51.md | 44 ++ ...on-audit-production_2026-03-08_15-35-21.md | 44 ++ ...udit-sales-approval_2026-03-08_15-35-59.md | 40 ++ ...tion-audit-settings_2026-03-08_15-36-22.md | 38 ++ ...h-function-hr-board_2026-03-08_15-37-02.md | 37 ++ ...arch-function-sales_2026-03-08_15-37-42.md | 44 ++ ...earch-options-acc-1_2026-03-08_15-39-13.md | 35 ++ ...earch-options-acc-2_2026-03-08_15-40-25.md | 35 ++ ...earch-options-acc-3_2026-03-08_15-41-25.md | 35 ++ ...earch-options-acc-4_2026-03-08_15-42-15.md | 35 ++ ...ch-options-approval_2026-03-08_15-43-34.md | 35 ++ ...ons-boards-customer_2026-03-08_15-44-58.md | 43 ++ ...K-search-options-hr_2026-03-08_15-46-48.md | 51 +++ ...-options-production_2026-03-08_15-47-37.md | 43 ++ ...ns-quality-material_2026-03-08_15-48-51.md | 39 ++ ...earch-options-sales_2026-03-08_15-49-32.md | 43 ++ ...ch-options-settings_2026-03-08_15-50-12.md | 43 ++ ...OK-settings-account_2026-03-08_15-50-24.md | 40 ++ ...settings-attendance_2026-03-08_15-50-36.md | 40 ++ ...ttings-bank-account_2026-03-08_15-50-49.md | 47 ++ ...K-settings-barobill_2026-03-08_15-51-01.md | 32 ++ ...tings-calendar-crud_2026-03-08_15-51-35.md | 40 ++ ...K-settings-calendar_2026-03-08_15-51-46.md | 32 ++ .../OK-settings-card_2026-03-08_15-52-01.md | 47 ++ ...OK-settings-company_2026-03-08_15-52-15.md | 40 ++ ...ttings-notification_2026-03-08_15-52-29.md | 40 ++ ...settings-permission_2026-03-08_15-52-43.md | 44 ++ .../OK-settings-popup_2026-03-08_15-52-58.md | 47 ++ ...K-settings-position_2026-03-08_15-53-09.md | 37 ++ .../OK-settings-rank_2026-03-08_15-53-20.md | 37 ++ ...ttings-subscription_2026-03-08_15-53-35.md | 40 ++ ...ngs-vacation-policy_2026-03-08_15-53-44.md | 40 ++ ...tings-work-schedule_2026-03-08_15-53-54.md | 40 ++ ...-standard-checklist_2026-03-08_15-54-13.md | 35 ++ ...rd-price-distribute_2026-03-08_15-54-32.md | 35 ++ ...andard-process-mgmt_2026-03-08_15-54-45.md | 36 ++ ...OK-system-dashboard_2026-03-08_15-54-57.md | 44 ++ ...-test-bills-14steps_2026-03-08_15-56-36.md | 38 ++ ...-test-bills-minimal_2026-03-08_15-56-43.md | 27 ++ .../OK-vendor-ledger_2026-03-08_15-57-06.md | 58 +++ ...K-vendor-management_2026-03-08_15-57-52.md | 60 +++ ...thdrawal-management_2026-03-08_15-58-08.md | 45 ++ ...flow-board-approval_2026-03-08_15-58-37.md | 39 ++ ...employee-onboarding_2026-03-08_15-59-15.md | 38 ++ ...low-inventory-cycle_2026-03-08_15-59-54.md | 39 ++ ...purchase-to-payment_2026-03-08_16-00-15.md | 31 ++ ...low-sales-lifecycle_2026-03-08_16-00-42.md | 46 ++ 205 files changed, 8662 insertions(+) create mode 100644 E2E_FULL_TEST_SUMMARY_2026-03-08_16-00-42.md create mode 100644 Fail-batch-create-acc-deposit_2026-03-08_14-47-49.md create mode 100644 Fail-create-delete-acc-bills_2026-03-08_14-51-10.md create mode 100644 Fail-create-delete-acc-deposit_2026-03-08_14-51-37.md create mode 100644 Fail-create-delete-board_2026-03-08_14-52-06.md create mode 100644 Fail-full-crud-acc-bills_2026-03-08_15-05-14.md create mode 100644 Fail-full-crud-acc-deposit_2026-03-08_15-06-01.md create mode 100644 Fail-full-crud-acc-sales_2026-03-08_15-06-49.md create mode 100644 Fail-reload-persist-acc-bills_2026-03-08_15-24-23.md create mode 100644 Fail-reload-persist-acc-deposit_2026-03-08_15-25-07.md create mode 100644 Fail-reload-persist-acc-sales_2026-03-08_15-25-48.md create mode 100644 Fail-sales-management_2026-03-08_15-27-55.md create mode 100644 success/OK-a11y-acc-client_2026-03-08_14-34-15.md create mode 100644 success/OK-a11y-acc-deposit_2026-03-08_14-34-27.md create mode 100644 success/OK-a11y-acc-purchase_2026-03-08_14-34-38.md create mode 100644 success/OK-a11y-acc-sales_2026-03-08_14-34-51.md create mode 100644 success/OK-a11y-approval-box_2026-03-08_14-35-02.md create mode 100644 success/OK-a11y-approval-draft_2026-03-08_14-35-14.md create mode 100644 success/OK-a11y-board-free_2026-03-08_14-35-26.md create mode 100644 success/OK-a11y-hr-attendance_2026-03-08_14-35-39.md create mode 100644 success/OK-a11y-hr-department_2026-03-08_14-35-52.md create mode 100644 success/OK-a11y-hr-employee_2026-03-08_14-36-04.md create mode 100644 success/OK-a11y-hr-salary_2026-03-08_14-36-16.md create mode 100644 success/OK-a11y-material-receiving_2026-03-08_14-36-28.md create mode 100644 success/OK-a11y-material-stock_2026-03-08_14-36-39.md create mode 100644 success/OK-a11y-prod-item_2026-03-08_14-36-51.md create mode 100644 success/OK-a11y-prod-work-order_2026-03-08_14-37-03.md create mode 100644 success/OK-a11y-sales-client_2026-03-08_14-37-16.md create mode 100644 success/OK-a11y-sales-estimate_2026-03-08_14-37-27.md create mode 100644 success/OK-a11y-sales-order_2026-03-08_14-37-40.md create mode 100644 success/OK-accounting-bad-debt_2026-03-08_14-37-51.md create mode 100644 success/OK-accounting-bank-transaction_2026-03-08_14-38-01.md create mode 100644 success/OK-accounting-bill_2026-03-08_14-38-25.md create mode 100644 success/OK-accounting-card-history_2026-03-08_14-38-35.md create mode 100644 success/OK-accounting-client_2026-03-08_14-38-53.md create mode 100644 success/OK-accounting-daily-report_2026-03-08_14-39-04.md create mode 100644 success/OK-accounting-deposit_2026-03-08_14-39-26.md create mode 100644 success/OK-accounting-expense-forecast_2026-03-08_14-39-36.md create mode 100644 success/OK-accounting-gift-card_2026-03-08_14-39-49.md create mode 100644 success/OK-accounting-journal-entry_2026-03-08_14-40-04.md create mode 100644 success/OK-accounting-payment_2026-03-08_14-40-19.md create mode 100644 success/OK-accounting-purchase_2026-03-08_14-40-32.md create mode 100644 success/OK-accounting-receivable_2026-03-08_14-40-45.md create mode 100644 success/OK-accounting-sales_2026-03-08_14-40-57.md create mode 100644 success/OK-accounting-tax-issue_2026-03-08_14-41-09.md create mode 100644 success/OK-accounting-tax-mgmt_2026-03-08_14-41-20.md create mode 100644 success/OK-accounting-withdrawal_2026-03-08_14-41-42.md create mode 100644 success/OK-api-health-acc_2026-03-08_14-42-28.md create mode 100644 success/OK-api-health-prod-misc_2026-03-08_14-43-15.md create mode 100644 success/OK-api-health-sales-hr_2026-03-08_14-44-02.md create mode 100644 success/OK-approval-box_2026-03-08_14-44-28.md create mode 100644 success/OK-attendance-checkin_2026-03-08_14-44-41.md create mode 100644 success/OK-attendance-management_2026-03-08_14-45-00.md create mode 100644 success/OK-batch-create-acc-bills_2026-03-08_14-46-58.md create mode 100644 success/OK-batch-create-board_2026-03-08_14-49-23.md create mode 100644 success/OK-batch-update-account-sales_2026-03-08_14-49-50.md create mode 100644 success/OK-board-management_2026-03-08_14-50-01.md create mode 100644 success/OK-board-test_2026-03-08_14-50-17.md create mode 100644 success/OK-company-info_2026-03-08_14-50-40.md create mode 100644 success/OK-cross-module-data-consistency_2026-03-08_14-52-43.md create mode 100644 success/OK-customer-event_2026-03-08_14-53-00.md create mode 100644 success/OK-customer-faq_2026-03-08_14-53-12.md create mode 100644 success/OK-customer-notice_2026-03-08_14-53-29.md create mode 100644 success/OK-department-add_2026-03-08_14-53-37.md create mode 100644 success/OK-deposit-management_2026-03-08_14-53-54.md create mode 100644 success/OK-detail-roundtrip-acc_2026-03-08_14-54-26.md create mode 100644 success/OK-detail-roundtrip-hr-board_2026-03-08_14-54-52.md create mode 100644 success/OK-detail-roundtrip-sales_2026-03-08_14-55-24.md create mode 100644 success/OK-detail-verify-acc-sales_2026-03-08_14-55-47.md create mode 100644 success/OK-draft-box_2026-03-08_14-56-00.md create mode 100644 success/OK-edge-boundary-acc-sales_2026-03-08_14-56-23.md create mode 100644 success/OK-edge-boundary-input-accounting_2026-03-08_14-56-47.md create mode 100644 success/OK-edge-boundary-input-hr_2026-03-08_14-57-10.md create mode 100644 success/OK-edge-boundary-input-sales_2026-03-08_14-57-33.md create mode 100644 success/OK-edge-concurrent-action-hr_2026-03-08_14-57-47.md create mode 100644 success/OK-edge-empty-submit-accounting_2026-03-08_14-58-06.md create mode 100644 success/OK-edge-empty-submit-board_2026-03-08_14-58-25.md create mode 100644 success/OK-edge-empty-submit-hr_2026-03-08_14-58-44.md create mode 100644 success/OK-edge-empty-submit-sales_2026-03-08_14-59-03.md create mode 100644 success/OK-edge-numeric-boundary-accounting_2026-03-08_14-59-27.md create mode 100644 success/OK-edge-rapid-click-acc-sales_2026-03-08_14-59-54.md create mode 100644 success/OK-edge-rapid-click-delete_2026-03-08_15-00-10.md create mode 100644 success/OK-edge-rapid-click-save-board_2026-03-08_15-00-30.md create mode 100644 success/OK-edge-rapid-click-save-sales_2026-03-08_15-00-49.md create mode 100644 success/OK-edge-special-chars-board_2026-03-08_15-01-21.md create mode 100644 success/OK-edge-special-chars-search_2026-03-08_15-01-53.md create mode 100644 success/OK-edge-unicode-input-board_2026-03-08_15-02-14.md create mode 100644 success/OK-form-validation-acc_2026-03-08_15-02-57.md create mode 100644 success/OK-form-validation-misc_2026-03-08_15-03-22.md create mode 100644 success/OK-form-validation-sales_2026-03-08_15-04-05.md create mode 100644 success/OK-free-board_2026-03-08_15-04-18.md create mode 100644 success/OK-full-crud-board_2026-03-08_15-07-53.md create mode 100644 success/OK-hr-attendance-admin_2026-03-08_15-08-03.md create mode 100644 success/OK-hr-attendance-status_2026-03-08_15-08-14.md create mode 100644 success/OK-hr-department_2026-03-08_15-08-24.md create mode 100644 success/OK-hr-employee_2026-03-08_15-08-37.md create mode 100644 success/OK-hr-salary-long-term-care_2026-03-08_15-08-54.md create mode 100644 success/OK-hr-salary_2026-03-08_15-09-07.md create mode 100644 success/OK-hr-vacation_2026-03-08_15-09-31.md create mode 100644 success/OK-input-fields-acc-1_2026-03-08_15-10-46.md create mode 100644 success/OK-input-fields-acc-2_2026-03-08_15-11-46.md create mode 100644 success/OK-input-fields-material-quality_2026-03-08_15-12-17.md create mode 100644 success/OK-input-fields-production_2026-03-08_15-12-37.md create mode 100644 success/OK-input-fields-sales_2026-03-08_15-13-19.md create mode 100644 success/OK-item-management_2026-03-08_15-13-34.md create mode 100644 success/OK-item-master_2026-03-08_15-13-45.md create mode 100644 success/OK-login-test_2026-03-08_15-13-50.md create mode 100644 success/OK-material-dispatch_2026-03-08_15-14-35.md create mode 100644 success/OK-material-receiving_2026-03-08_15-14-55.md create mode 100644 success/OK-material-stock_2026-03-08_15-15-05.md create mode 100644 success/OK-multi-item-acc-sales_2026-03-08_15-15-48.md create mode 100644 success/OK-pagination-sort-acc_2026-03-08_15-16-28.md create mode 100644 success/OK-pagination-sort-hr_2026-03-08_15-16-55.md create mode 100644 success/OK-pagination-sort-sales_2026-03-08_15-17-32.md create mode 100644 success/OK-pdf-download-test_2026-03-08_15-17-33.md create mode 100644 success/OK-perf-acc-client_2026-03-08_15-17-42.md create mode 100644 success/OK-perf-acc-deposit_2026-03-08_15-17-51.md create mode 100644 success/OK-perf-acc-purchase_2026-03-08_15-18-00.md create mode 100644 success/OK-perf-acc-sales_2026-03-08_15-18-09.md create mode 100644 success/OK-perf-hr-attendance_2026-03-08_15-18-18.md create mode 100644 success/OK-perf-hr-department_2026-03-08_15-18-27.md create mode 100644 success/OK-perf-hr-employee_2026-03-08_15-18-36.md create mode 100644 success/OK-perf-hr-salary_2026-03-08_15-18-45.md create mode 100644 success/OK-perf-material-receiving_2026-03-08_15-18-54.md create mode 100644 success/OK-perf-material-stock_2026-03-08_15-19-03.md create mode 100644 success/OK-perf-prod-item_2026-03-08_15-19-12.md create mode 100644 success/OK-perf-prod-work-order_2026-03-08_15-19-21.md create mode 100644 success/OK-perf-prod-work-result_2026-03-08_15-19-30.md create mode 100644 success/OK-perf-sales-client_2026-03-08_15-19-39.md create mode 100644 success/OK-perf-sales-estimate_2026-03-08_15-19-48.md create mode 100644 success/OK-perf-sales-order_2026-03-08_15-19-57.md create mode 100644 success/OK-perf-sales-price_2026-03-08_15-20-06.md create mode 100644 success/OK-production-dashboard_2026-03-08_15-20-19.md create mode 100644 success/OK-production-item_2026-03-08_15-20-30.md create mode 100644 success/OK-production-work-order_2026-03-08_15-21-11.md create mode 100644 success/OK-production-work-result_2026-03-08_15-21-30.md create mode 100644 success/OK-production-worker_2026-03-08_15-21-41.md create mode 100644 success/OK-purchase-order_2026-03-08_15-21-55.md create mode 100644 success/OK-purchase-price_2026-03-08_15-22-17.md create mode 100644 success/OK-purchase-status_2026-03-08_15-22-30.md create mode 100644 success/OK-purchase-vendor_2026-03-08_15-22-45.md create mode 100644 success/OK-quality-certification_2026-03-08_15-22-54.md create mode 100644 success/OK-quality-inspection_2026-03-08_15-23-06.md create mode 100644 success/OK-quality-performance-report_2026-03-08_15-23-16.md create mode 100644 success/OK-reference-box_2026-03-08_15-23-46.md create mode 100644 success/OK-reload-persist-board_2026-03-08_15-26-44.md create mode 100644 success/OK-sales-client_2026-03-08_15-27-03.md create mode 100644 success/OK-sales-order-bulk-delete_2026-03-08_15-28-35.md create mode 100644 success/OK-sales-order_2026-03-08_15-29-23.md create mode 100644 success/OK-sales-pricing_2026-03-08_15-29-37.md create mode 100644 success/OK-sales-quotation_2026-03-08_15-30-23.md create mode 100644 success/OK-sales-site-mgmt_2026-03-08_15-30-38.md create mode 100644 success/OK-search-bug-draft_2026-03-08_15-31-03.md create mode 100644 success/OK-search-bug-salary_2026-03-08_15-31-30.md create mode 100644 success/OK-search-filter-acc-sales_2026-03-08_15-32-03.md create mode 100644 success/OK-search-function-acc_2026-03-08_15-32-55.md create mode 100644 success/OK-search-function-audit-acc1_2026-03-08_15-33-38.md create mode 100644 success/OK-search-function-audit-acc2-hr_2026-03-08_15-34-15.md create mode 100644 success/OK-search-function-audit-boards_2026-03-08_15-34-51.md create mode 100644 success/OK-search-function-audit-production_2026-03-08_15-35-21.md create mode 100644 success/OK-search-function-audit-sales-approval_2026-03-08_15-35-59.md create mode 100644 success/OK-search-function-audit-settings_2026-03-08_15-36-22.md create mode 100644 success/OK-search-function-hr-board_2026-03-08_15-37-02.md create mode 100644 success/OK-search-function-sales_2026-03-08_15-37-42.md create mode 100644 success/OK-search-options-acc-1_2026-03-08_15-39-13.md create mode 100644 success/OK-search-options-acc-2_2026-03-08_15-40-25.md create mode 100644 success/OK-search-options-acc-3_2026-03-08_15-41-25.md create mode 100644 success/OK-search-options-acc-4_2026-03-08_15-42-15.md create mode 100644 success/OK-search-options-approval_2026-03-08_15-43-34.md create mode 100644 success/OK-search-options-boards-customer_2026-03-08_15-44-58.md create mode 100644 success/OK-search-options-hr_2026-03-08_15-46-48.md create mode 100644 success/OK-search-options-production_2026-03-08_15-47-37.md create mode 100644 success/OK-search-options-quality-material_2026-03-08_15-48-51.md create mode 100644 success/OK-search-options-sales_2026-03-08_15-49-32.md create mode 100644 success/OK-search-options-settings_2026-03-08_15-50-12.md create mode 100644 success/OK-settings-account_2026-03-08_15-50-24.md create mode 100644 success/OK-settings-attendance_2026-03-08_15-50-36.md create mode 100644 success/OK-settings-bank-account_2026-03-08_15-50-49.md create mode 100644 success/OK-settings-barobill_2026-03-08_15-51-01.md create mode 100644 success/OK-settings-calendar-crud_2026-03-08_15-51-35.md create mode 100644 success/OK-settings-calendar_2026-03-08_15-51-46.md create mode 100644 success/OK-settings-card_2026-03-08_15-52-01.md create mode 100644 success/OK-settings-company_2026-03-08_15-52-15.md create mode 100644 success/OK-settings-notification_2026-03-08_15-52-29.md create mode 100644 success/OK-settings-permission_2026-03-08_15-52-43.md create mode 100644 success/OK-settings-popup_2026-03-08_15-52-58.md create mode 100644 success/OK-settings-position_2026-03-08_15-53-09.md create mode 100644 success/OK-settings-rank_2026-03-08_15-53-20.md create mode 100644 success/OK-settings-subscription_2026-03-08_15-53-35.md create mode 100644 success/OK-settings-vacation-policy_2026-03-08_15-53-44.md create mode 100644 success/OK-settings-work-schedule_2026-03-08_15-53-54.md create mode 100644 success/OK-standard-checklist_2026-03-08_15-54-13.md create mode 100644 success/OK-standard-price-distribute_2026-03-08_15-54-32.md create mode 100644 success/OK-standard-process-mgmt_2026-03-08_15-54-45.md create mode 100644 success/OK-system-dashboard_2026-03-08_15-54-57.md create mode 100644 success/OK-test-bills-14steps_2026-03-08_15-56-36.md create mode 100644 success/OK-test-bills-minimal_2026-03-08_15-56-43.md create mode 100644 success/OK-vendor-ledger_2026-03-08_15-57-06.md create mode 100644 success/OK-vendor-management_2026-03-08_15-57-52.md create mode 100644 success/OK-withdrawal-management_2026-03-08_15-58-08.md create mode 100644 success/OK-workflow-board-approval_2026-03-08_15-58-37.md create mode 100644 success/OK-workflow-employee-onboarding_2026-03-08_15-59-15.md create mode 100644 success/OK-workflow-inventory-cycle_2026-03-08_15-59-54.md create mode 100644 success/OK-workflow-purchase-to-payment_2026-03-08_16-00-15.md create mode 100644 success/OK-workflow-sales-lifecycle_2026-03-08_16-00-42.md diff --git a/E2E_FULL_TEST_SUMMARY_2026-03-08_16-00-42.md b/E2E_FULL_TEST_SUMMARY_2026-03-08_16-00-42.md new file mode 100644 index 0000000..e44a979 --- /dev/null +++ b/E2E_FULL_TEST_SUMMARY_2026-03-08_16-00-42.md @@ -0,0 +1,406 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-08_16-00-42 +**총 소요 시간**: 86.7분 +**전체 시나리오**: 204개 | **성공**: 193개 | **실패**: 11개 📈 (이전: 1/1 성공) + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 18 | 18 | 0 | 100% | +| 기능 테스트 | 147 | 136 | 11 | 93% | +| 엣지 케이스 | 17 | 17 | 0 | 100% | +| 성능 테스트 | 17 | 17 | 0 | 100% | +| 비즈니스 워크플로우 | 5 | 5 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 회계관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 2 | 접근성 검사: 회계관리 > 입금관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 3 | 접근성 검사: 회계관리 > 매입관리 | ✅ | 4 | 4 | 0 | 11.2 | +| 4 | 접근성 검사: 회계관리 > 매출관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 5 | 접근성 검사: 결재관리 > 결재함 | ✅ | 4 | 4 | 0 | 11.3 | +| 6 | 접근성 검사: 결재관리 > 기안함 | ✅ | 4 | 4 | 0 | 11.2 | +| 7 | 접근성 검사: 게시판 > 자유게시판 | ✅ | 4 | 3 | 0 | 12.7 | +| 8 | 접근성 검사: 인사관리 > 근태관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 9 | 접근성 검사: 인사관리 > 부서관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 10 | 접근성 검사: 인사관리 > 사원관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 11 | 접근성 검사: 인사관리 > 급여관리 | ✅ | 4 | 4 | 0 | 11.2 | +| 12 | 접근성 검사: 자재관리 > 입고관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 13 | 접근성 검사: 자재관리 > 재고현황 | ✅ | 4 | 4 | 0 | 11.2 | +| 14 | 접근성 검사: 생산관리 > 품목관리 | ✅ | 4 | 4 | 0 | 11.2 | +| 15 | 접근성 검사: 생산관리 > 작업지시 | ✅ | 4 | 3 | 0 | 12.7 | +| 16 | 접근성 검사: 판매관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 17 | 접근성 검사: 판매관리 > 견적관리 | ✅ | 4 | 4 | 0 | 11.2 | +| 18 | 접근성 검사: 판매관리 > 수주관리 | ✅ | 4 | 3 | 0 | 12.7 | +| 19 | 악성채권추심관리 테스트 | ✅ | 24 | 22 | 0 | 11.2 | +| 20 | 계좌입출금내역 테스트 | ✅ | 18 | 16 | 0 | 10.1 | +| 21 | 어음관리 테스트 | ✅ | 24 | 18 | 0 | 23.3 | +| 22 | 카드사용내역 테스트 | ✅ | 18 | 16 | 0 | 10.2 | +| 23 | 회계거래처관리 테스트 | ✅ | 23 | 20 | 0 | 17.9 | +| 24 | 일일 일보 테스트 | ✅ | 10 | 10 | 0 | 11.5 | +| 25 | 입금관리 테스트 | ✅ | 25 | 19 | 0 | 22.3 | +| 26 | 지출예상내역서 테스트 | ✅ | 16 | 14 | 0 | 9.5 | +| 27 | 상품권관리 테스트 | ✅ | 11 | 9 | 0 | 13.0 | +| 28 | 일반전표입력 테스트 | ✅ | 12 | 10 | 0 | 15.0 | +| 29 | 결제내역 테스트 | ✅ | 18 | 14 | 0 | 15.2 | +| 30 | 매입관리 테스트 | ✅ | 16 | 14 | 0 | 12.4 | +| 31 | 미수금현황 테스트 | ✅ | 19 | 16 | 0 | 13.2 | +| 32 | 매출관리 테스트 | ✅ | 16 | 14 | 0 | 12.5 | +| 33 | 세금계산서발행 테스트 | ✅ | 11 | 10 | 0 | 11.3 | +| 34 | 세금계산서관리 테스트 | ✅ | 11 | 10 | 0 | 11.3 | +| 35 | 출금관리 테스트 | ✅ | 25 | 19 | 0 | 22.3 | +| 36 | API 건강성 감사: 회계 | ✅ | 39 | 39 | 0 | 46.1 | +| 37 | API 건강성 감사: 생산/기타 | ✅ | 35 | 35 | 0 | 46.7 | +| 38 | API 건강성 감사: 판매/인사 | ✅ | 35 | 35 | 0 | 46.6 | +| 39 | 결재함 E2E 테스트 | ✅ | 25 | 23 | 0 | 26.3 | +| 40 | 근태현황 출퇴근 테스트 | ✅ | 12 | 12 | 0 | 12.8 | +| 41 | 근태관리 테스트 | ✅ | 25 | 25 | 0 | 19.1 | +| 42 | 연속 등록 테스트: 어음관리 | ✅ | 39 | 39 | 0 | 117.8 | +| 43 | 연속 등록 테스트: 입금관리 | ❌ | 19 | 18 | 1 | 51.2 | +| 44 | 연속 등록 테스트: 자유게시판 | ✅ | 39 | 39 | 0 | 94.6 | +| 45 | 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 | ✅ | 14 | 14 | 0 | 26.6 | +| 46 | 게시판 관리 테스트 | ✅ | 22 | 22 | 0 | 11.4 | +| 47 | 게시판 테스트 페이지 테스트 | ✅ | 13 | 11 | 0 | 15.4 | +| 48 | 설정 - 회사정보 | ✅ | 31 | 29 | 0 | 23.5 | +| 49 | Create+Delete 테스트: 어음관리 | ❌ | 8 | 7 | 1 | 29.8 | +| 50 | Create+Delete 테스트: 입금관리 | ❌ | 8 | 7 | 1 | 27.3 | +| 51 | Create+Delete 테스트: 자유게시판 | ❌ | 8 | 6 | 2 | 28.2 | +| 52 | 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) | ✅ | 15 | 15 | 0 | 37.8 | +| 53 | 이벤트 게시판 테스트 | ✅ | 19 | 14 | 0 | 16.2 | +| 54 | FAQ 테스트 | ✅ | 16 | 12 | 0 | 12.9 | +| 55 | 공지사항 테스트 | ✅ | 19 | 15 | 0 | 16.2 | +| 56 | 부서관리 테스트 | ✅ | 16 | 16 | 0 | 8.8 | +| 57 | 입금관리 테스트 | ✅ | 21 | 20 | 0 | 16.2 | +| 58 | 상세 조회 왕복 검증: 회계 | ✅ | 23 | 23 | 0 | 32.6 | +| 59 | 상세 조회 왕복 검증: 인사/게시판 | ✅ | 15 | 15 | 0 | 25.6 | +| 60 | 상세 조회 왕복 검증: 판매 | ✅ | 23 | 23 | 0 | 32.6 | +| 61 | 목록↔상세 필드별 대조 검증: 매출관리 | ✅ | 12 | 12 | 0 | 23.0 | +| 62 | 기안함 테스트 | ✅ | 17 | 15 | 0 | 12.6 | +| 63 | 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) | ✅ | 14 | 14 | 0 | 23.5 | +| 64 | 엣지 케이스: 경계값 입력 (회계 > 입금관리) | ✅ | 14 | 14 | 0 | 23.3 | +| 65 | 엣지 케이스: 경계값 입력 (인사 > 사원관리) | ✅ | 14 | 14 | 0 | 23.3 | +| 66 | 엣지 케이스: 경계값 입력 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 23.3 | +| 67 | 엣지 케이스: 동시 액션 (인사 > 근태관리) | ✅ | 5 | 5 | 0 | 13.8 | +| 68 | 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) | ✅ | 7 | 7 | 0 | 19.0 | +| 69 | 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.1 | +| 70 | 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) | ✅ | 7 | 7 | 0 | 19.0 | +| 71 | 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.0 | +| 72 | 엣지 케이스: 숫자 경계값 (회계 > 입금관리) | ✅ | 13 | 13 | 0 | 23.6 | +| 73 | 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) | ✅ | 10 | 10 | 0 | 27.2 | +| 74 | 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) | ✅ | 6 | 6 | 0 | 15.8 | +| 75 | 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.8 | +| 76 | 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.8 | +| 77 | 엣지 케이스: 특수문자 검색 (게시판 > 자유게시판) | ✅ | 14 | 14 | 0 | 31.9 | +| 78 | 엣지 케이스: 특수문자 검색 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 31.9 | +| 79 | 엣지 케이스: 유니코드 입력 (게시판 > 자유게시판) | ✅ | 10 | 10 | 0 | 20.4 | +| 80 | 폼 유효성 검증 감사: 회계 (어음/입금/출금) | ✅ | 20 | 20 | 0 | 43.1 | +| 81 | 폼 유효성 검증 감사: 생산/게시판 | ✅ | 13 | 13 | 0 | 25.0 | +| 82 | 폼 유효성 검증 감사: 판매 (거래처/수주/견적) | ✅ | 20 | 20 | 0 | 43.1 | +| 83 | 자유게시판 E2E 테스트 | ✅ | 22 | 22 | 0 | 13.4 | +| 84 | Full CRUD 테스트: 어음관리 (Enhanced) | ❌ | 26 | 25 | 1 | 55.9 | +| 85 | Full CRUD 테스트: 입금관리 (금액포맷+상세대조+API검증) | ❌ | 30 | 29 | 1 | 46.9 | +| 86 | Full CRUD 테스트: 매출관리 (계산검증+상세대조+API검증) | ❌ | 29 | 28 | 1 | 48.1 | +| 87 | Full CRUD 테스트: 자유게시판 (Enhanced) | ✅ | 33 | 33 | 0 | 63.8 | +| 88 | 근태관리 테스트 | ✅ | 14 | 14 | 0 | 10.1 | +| 89 | 근태현황 테스트 | ✅ | 17 | 14 | 0 | 11.3 | +| 90 | 부서관리 테스트 | ✅ | 14 | 14 | 0 | 9.8 | +| 91 | 사원관리 테스트 | ✅ | 22 | 22 | 0 | 13.3 | +| 92 | 급여 장기요양보험 필드 검증 테스트 | ✅ | 16 | 16 | 0 | 17.0 | +| 93 | 급여관리 테스트 | ✅ | 23 | 23 | 0 | 13.0 | +| 94 | 휴가관리 테스트 | ✅ | 25 | 19 | 0 | 23.2 | +| 95 | 입력 필드 전수 테스트: 어음/입금/출금 (1/5) | ✅ | 20 | 20 | 0 | 75.6 | +| 96 | 입력 필드 전수 테스트: 거래처(회계)/악성채권 (2/5) | ✅ | 13 | 13 | 0 | 60.2 | +| 97 | 입력 필드 전수 테스트: 입고/제품검사 (5/5) | ✅ | 13 | 13 | 0 | 30.4 | +| 98 | 입력 필드 전수 테스트: 작업지시/작업실적 (4/5) | ✅ | 13 | 13 | 0 | 20.5 | +| 99 | 입력 필드 전수 테스트: 거래처(판매)/수주/견적 (3/5) | ✅ | 20 | 20 | 0 | 41.1 | +| 100 | 품목관리 테스트 | ✅ | 16 | 12 | 0 | 15.2 | +| 101 | 품목기준관리 테스트 | ✅ | 14 | 13 | 0 | 11.0 | +| 102 | 인증 세션 테스트 | ✅ | 13 | 12 | 0 | 4.8 | +| 103 | 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.3 | +| 104 | 입고관리 테스트 | ✅ | 25 | 19 | 0 | 20.6 | +| 105 | 재고현황 테스트 | ✅ | 18 | 16 | 0 | 10.0 | +| 106 | 다중 품목 등록 + 자동계산 + 품목삭제 재계산: 매출관리 | ✅ | 22 | 22 | 0 | 43.3 | +| 107 | 페이지네이션 & 정렬 검증: 회계 | ✅ | 17 | 17 | 0 | 39.1 | +| 108 | 페이지네이션 & 정렬 검증: 인사/게시판 | ✅ | 11 | 11 | 0 | 27.5 | +| 109 | 페이지네이션 & 정렬 검증: 판매 | ✅ | 17 | 17 | 0 | 37.1 | +| 110 | PDF 다운로드 전체 검사 | ✅ | 5 | 5 | 0 | 1.1 | +| 111 | 성능 측정: 회계관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 112 | 성능 측정: 회계관리 > 입금관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 113 | 성능 측정: 회계관리 > 매입관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 114 | 성능 측정: 회계관리 > 매출관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 115 | 성능 측정: 인사관리 > 근태관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 116 | 성능 측정: 인사관리 > 부서관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 117 | 성능 측정: 인사관리 > 사원관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 118 | 성능 측정: 인사관리 > 급여관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 119 | 성능 측정: 자재관리 > 입고관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 120 | 성능 측정: 자재관리 > 재고현황 | ✅ | 5 | 5 | 0 | 9.0 | +| 121 | 성능 측정: 생산관리 > 품목관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 122 | 성능 측정: 생산관리 > 작업지시 | ✅ | 5 | 5 | 0 | 9.0 | +| 123 | 성능 측정: 생산관리 > 작업실적 | ✅ | 5 | 5 | 0 | 9.0 | +| 124 | 성능 측정: 판매관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 125 | 성능 측정: 판매관리 > 견적관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 126 | 성능 측정: 판매관리 > 수주관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 127 | 성능 측정: 판매관리 > 단가관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 128 | 생산 현황판 테스트 | ✅ | 12 | 10 | 0 | 12.8 | +| 129 | 생산품목관리 테스트 | ✅ | 14 | 13 | 0 | 11.0 | +| 130 | 작업지시 CRUD + 필드검증 + API확인: 생산관리 | ✅ | 30 | 30 | 0 | 41.4 | +| 131 | 작업실적 테스트 | ✅ | 23 | 19 | 0 | 18.6 | +| 132 | 작업자 화면 테스트 | ✅ | 14 | 13 | 0 | 11.0 | +| 133 | 발주관리 테스트 | ✅ | 12 | 10 | 0 | 14.8 | +| 134 | 구매 단가관리 테스트 | ✅ | 11 | 8 | 0 | 21.6 | +| 135 | 구매현황 테스트 | ✅ | 9 | 8 | 0 | 13.0 | +| 136 | 구매관리 거래처관리 테스트 | ✅ | 11 | 9 | 0 | 14.9 | +| 137 | 품질인정심사 시스템 테스트 | ✅ | 14 | 14 | 0 | 9.5 | +| 138 | 제품검사관리 테스트 | ✅ | 17 | 17 | 0 | 12.0 | +| 139 | 실적신고관리 테스트 | ✅ | 12 | 12 | 0 | 9.5 | +| 140 | 참조함 E2E 테스트 | ✅ | 40 | 37 | 0 | 29.9 | +| 141 | 새로고침 데이터 유지 검증: 어음관리 | ❌ | 14 | 13 | 1 | 37.3 | +| 142 | 새로고침 데이터 유지 검증: 입금관리 | ❌ | 12 | 11 | 1 | 44.1 | +| 143 | 새로고침 데이터 유지 검증: 매출관리 | ❌ | 13 | 12 | 1 | 40.9 | +| 144 | 새로고침 데이터 유지 검증: 자유게시판 | ✅ | 19 | 19 | 0 | 55.6 | +| 145 | 판매거래처관리 테스트 | ✅ | 23 | 19 | 0 | 19.4 | +| 146 | Full CRUD 테스트: 매출관리 | ❌ | 19 | 18 | 1 | 52.3 | +| 147 | 수주 일괄삭제 테스트 | ✅ | 20 | 20 | 0 | 39.6 | +| 148 | 수주관리 CRUD + 계산검증 테스트 | ✅ | 32 | 32 | 0 | 48.2 | +| 149 | 단가관리 테스트 | ✅ | 26 | 24 | 0 | 14.4 | +| 150 | 견적관리 CRUD + 계산검증 테스트 | ✅ | 32 | 31 | 0 | 45.5 | +| 151 | 현장관리 테스트 | ✅ | 11 | 9 | 0 | 14.9 | +| 152 | 기안함 검색 버그 상세 검증 | ✅ | 11 | 11 | 0 | 25.1 | +| 153 | 급여관리 검색 버그 상세 검증 | ✅ | 10 | 10 | 0 | 27.1 | +| 154 | 검색/필터/페이지네이션 테스트: 매출관리 | ✅ | 18 | 18 | 0 | 32.5 | +| 155 | 검색 기능 동작 검증: 회계 | ✅ | 20 | 20 | 0 | 52.2 | +| 156 | 검색 기능 감사: 회계관리 (1/6) | ✅ | 20 | 20 | 0 | 43.4 | +| 157 | 검색 기능 감사: 회계관리2+인사관리 (2/6) | ✅ | 20 | 20 | 0 | 36.4 | +| 158 | 검색 기능 감사: 게시판/고객센터/설정1 (5/6) | ✅ | 20 | 20 | 0 | 36.7 | +| 159 | 검색 기능 감사: 생산/품목/품질/자재 (3/6) | ✅ | 20 | 20 | 0 | 29.9 | +| 160 | 검색 기능 감사: 판매/출고/결재 (4/6) | ✅ | 16 | 16 | 0 | 37.6 | +| 161 | 검색 기능 감사: 설정2 (6/6) | ✅ | 14 | 14 | 0 | 23.5 | +| 162 | 검색 기능 동작 검증: 인사/게시판 | ✅ | 13 | 13 | 0 | 39.4 | +| 163 | 검색 기능 동작 검증: 판매 | ✅ | 20 | 20 | 0 | 40.7 | +| 164 | 검색 옵션 전수 테스트: 회계거래처/입금/출금 (1/10) | ✅ | 11 | 11 | 0 | 90.8 | +| 165 | 검색 옵션 전수 테스트: 매입/매출/카드내역 (2/10) | ✅ | 11 | 11 | 0 | 72.3 | +| 166 | 검색 옵션 전수 테스트: 어음/추심/계좌 (3/11) | ✅ | 11 | 11 | 0 | 59.9 | +| 167 | 검색 옵션 전수 테스트: 미수금/결제/지출예상 (4/11) | ✅ | 11 | 11 | 0 | 50.0 | +| 168 | 검색 옵션 전수 테스트: 결재관리 (6/10) | ✅ | 11 | 11 | 0 | 78.4 | +| 169 | 검색 옵션 전수 테스트: 게시판/고객센터 (5/10) | ✅ | 19 | 19 | 0 | 84.6 | +| 170 | 검색 옵션 전수 테스트: 인사관리 전체 (4/10) | ✅ | 27 | 27 | 0 | 109.5 | +| 171 | 검색 옵션 전수 테스트: 생산/품목관리 (8/11) | ✅ | 19 | 19 | 0 | 49.3 | +| 172 | 검색 옵션 전수 테스트: 품질/자재관리 (9/10) | ✅ | 15 | 15 | 0 | 73.7 | +| 173 | 검색 옵션 전수 테스트: 판매관리/출고 (7/11) | ✅ | 19 | 19 | 0 | 41.2 | +| 174 | 검색 옵션 전수 테스트: 설정 (10/11) | ✅ | 19 | 19 | 0 | 40.1 | +| 175 | 계정정보 테스트 | ✅ | 16 | 14 | 0 | 12.2 | +| 176 | 근태설정 테스트 | ✅ | 16 | 13 | 0 | 11.3 | +| 177 | 계좌관리 테스트 | ✅ | 23 | 21 | 0 | 13.1 | +| 178 | 바로빌연동관리 테스트 | ✅ | 8 | 6 | 0 | 12.5 | +| 179 | 달력 일정 CRUD 테스트 | ✅ | 16 | 16 | 0 | 33.9 | +| 180 | 달력관리 테스트 | ✅ | 8 | 7 | 0 | 11.0 | +| 181 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.3 | +| 182 | 회사정보 테스트 | ✅ | 16 | 13 | 0 | 14.5 | +| 183 | 알림설정 테스트 | ✅ | 16 | 13 | 0 | 14.2 | +| 184 | 권한관리 테스트 | ✅ | 20 | 18 | 0 | 13.7 | +| 185 | 팝업관리 테스트 | ✅ | 23 | 21 | 0 | 14.9 | +| 186 | 직책관리 테스트 | ✅ | 13 | 13 | 0 | 11.3 | +| 187 | 직급관리 테스트 | ✅ | 13 | 12 | 0 | 11.3 | +| 188 | 구독관리 테스트 | ✅ | 16 | 12 | 0 | 14.6 | +| 189 | 휴가정책 테스트 | ✅ | 16 | 15 | 0 | 8.6 | +| 190 | 근무일정 테스트 | ✅ | 16 | 15 | 0 | 10.3 | +| 191 | 점검표 관리 테스트 | ✅ | 11 | 8 | 0 | 19.1 | +| 192 | 단가배포관리 테스트 | ✅ | 11 | 8 | 0 | 19.1 | +| 193 | 공정관리 테스트 | ✅ | 12 | 10 | 0 | 13.0 | +| 194 | 시스템 대시보드 위젯/통계/현황판/자금현황/지출예상/설정 테스트 | ✅ | 20 | 19 | 0 | 11.7 | +| 195 | Test bills 14 steps | ✅ | 14 | 14 | 0 | 99.6 | +| 196 | Test bills page minimal | ✅ | 3 | 3 | 0 | 7.0 | +| 197 | 거래처원장 테스트 | ✅ | 34 | 30 | 0 | 22.4 | +| 198 | 거래처관리 검색/필터/상세/수정/복원 + 네거티브 + 섹션검증: 회계관리 | ✅ | 36 | 36 | 0 | 45.9 | +| 199 | 출금관리 테스트 | ✅ | 21 | 20 | 0 | 16.2 | +| 200 | 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 | ✅ | 15 | 15 | 0 | 29.6 | +| 201 | 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 | ✅ | 14 | 14 | 0 | 37.6 | +| 202 | 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 | ✅ | 15 | 15 | 0 | 38.8 | +| 203 | 비즈니스 워크플로우: 구매→매입 흐름 | ✅ | 7 | 7 | 0 | 21.7 | +| 204 | 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 | ✅ | 22 | 22 | 0 | 27.0 | + +## 비즈니스 워크플로우 상세 + +### ✅ 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 +- 스텝: 15/15 성공 | 소요: 29.6초 +- 단계: CAPTURE_POST(✅) → CHECK_DRAFTS(✅) → CHECK_APPROVALS(✅) → CHECK_REFERENCES(✅) + +### ✅ 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 +- 스텝: 14/14 성공 | 소요: 37.6초 +- 단계: CAPTURE_EMPLOYEE(✅) → CHECK_DEPARTMENTS(✅) → VERIFY_EMPLOYEE_ATTEND(✅) → VERIFY_EMPLOYEE_SALARY(✅) + +### ✅ 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 +- 스텝: 15/15 성공 | 소요: 38.8초 +- 단계: CAPTURE_ITEM(✅) → VERIFY_ITEM_RECEIVING(✅) → VERIFY_ITEM_STOCK(✅) → CHECK_WITHDRAWAL(✅) + +### ✅ 비즈니스 워크플로우: 구매→매입 흐름 +- 스텝: 7/7 성공 | 소요: 21.7초 +- 단계: CAPTURE_VENDOR(✅) → VERIFY_VENDOR_ACC(✅) + +### ✅ 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 +- 스텝: 22/22 성공 | 소요: 27.0초 +- 단계: INIT(✅) → CAPTURE_CLIENT(✅) → VERIFY(✅) → CAPTURE_PRICE_ITEM(✅) → VERIFY(✅) → CHECK_ORDERS(✅) → VERIFY(✅) → CHECK_SALES(✅) → VERIFY(✅) → VERIFY(✅) → SUMMARY(✅) + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 회계관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 회계관리 > 입금관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매입관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매출관리 | - | - | - | - | +| 성능 측정: 인사관리 > 근태관리 | - | - | - | - | +| 성능 측정: 인사관리 > 부서관리 | - | - | - | - | +| 성능 측정: 인사관리 > 사원관리 | - | - | - | - | +| 성능 측정: 인사관리 > 급여관리 | - | - | - | - | +| 성능 측정: 자재관리 > 입고관리 | - | - | - | - | +| 성능 측정: 자재관리 > 재고현황 | - | - | - | - | +| 성능 측정: 생산관리 > 품목관리 | - | - | - | - | +| 성능 측정: 생산관리 > 작업지시 | - | - | - | - | +| 성능 측정: 생산관리 > 작업실적 | - | - | - | - | +| 성능 측정: 판매관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 판매관리 > 견적관리 | - | - | - | - | +| 성능 측정: 판매관리 > 수주관리 | - | - | - | - | +| 성능 측정: 판매관리 > 단가관리 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 회계관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 입금관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매입관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매출관리 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 결재함 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 기안함 | - | - | - | - | - | +| 접근성 검사: 게시판 > 자유게시판 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 근태관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 부서관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 사원관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 급여관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 입고관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 재고현황 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 품목관리 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 작업지시 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 견적관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 수주관리 | - | - | - | - | - | + +## 실패 시나리오 상세 + +### ❌ 연속 등록 테스트: 입금관리 (batch-create-acc-deposit) +- **진단**: empty_data → API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 +- Step 19 ([회계관리 > 입금관리] [DELETE #1] 데이터 삭제): E2E_TEST_ 데이터 없음 (ts=20260308_144707) + +### ❌ Create+Delete 테스트: 어음관리 (create-delete-acc-bills) +- Step 8 ([회계관리 > 어음관리] [DELETE] 데이터 삭제): E2E_TEST_ 데이터 없음 + +### ❌ Create+Delete 테스트: 입금관리 (create-delete-acc-deposit) +- **진단**: empty_data → API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 +- Step 8 ([회계관리 > 입금관리] [DELETE] 데이터 삭제): E2E_TEST_ 데이터 없음 + +### ❌ Create+Delete 테스트: 자유게시판 (create-delete-board) +- **진단**: empty_data → API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 +- Step 7 ([게시판 > 자유게시판] [VERIFY] 생성 데이터 확인): evaluate returned ok:false +- Step 8 ([게시판 > 자유게시판] [DELETE] 데이터 삭제): E2E_TEST_ 데이터 없음 + +### ❌ Full CRUD 테스트: 어음관리 (Enhanced) (full-crud-acc-bills) +- Step 26 ([회계관리 > 어음관리] [DELETE] 데이터 삭제 (행 클릭 → 삭제 → 확인)): 삭제 버튼 없음 + +### ❌ Full CRUD 테스트: 입금관리 (금액포맷+상세대조+API검증) (full-crud-acc-deposit) +- **진단**: empty_data → API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 +- Step 30 ([회계관리 > 입금관리] [DELETE] 데이터 삭제): 삭제 버튼 없음 + +### ❌ Full CRUD 테스트: 매출관리 (계산검증+상세대조+API검증) (full-crud-acc-sales) +- Step 29 ([회계관리 > 매출관리] [DELETE] 데이터 삭제): 삭제 버튼 없음 + +### ❌ 새로고침 데이터 유지 검증: 어음관리 (reload-persist-acc-bills) +- Step 14 ([회계관리 > 어음관리] [DELETE] 테스트 데이터 삭제): E2E_TEST_ 행 없음 (ts=20260308_152355) + +### ❌ 새로고침 데이터 유지 검증: 입금관리 (reload-persist-acc-deposit) +- **진단**: empty_data → API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 +- Step 12 ([회계관리 > 입금관리] [DELETE] 테스트 데이터 삭제): E2E_TEST_ 행 없음 (ts=20260308_152432) + +### ❌ 새로고침 데이터 유지 검증: 매출관리 (reload-persist-acc-sales) +- Step 13 ([회계관리 > 매출관리] [DELETE] 테스트 데이터 삭제): E2E_TEST_ 행 없음 + +### ❌ Full CRUD 테스트: 매출관리 (sales-management) +- Step 19 ([회계관리 > 매출관리] [DELETE] 데이터 삭제 (첫 행 → 상세 → 삭제 → 확인)): 삭제 버튼 없음 + +## ⚠️ 불안정 테스트 (Flaky Tests) +최근 3일간 성공과 실패가 모두 발생한 시나리오: + +| 시나리오 | 성공 횟수 | 실패 횟수 | 안정성 | +|---------|----------|----------|--------| +| login-test | 4 | 5 | 🔴 44% | +| attendance-management | 5 | 3 | 🟠 63% | +| inspection-management | 1 | 3 | 🔴 25% | +| vendor-management | 5 | 3 | 🟠 63% | +| approval-box | 5 | 2 | 🟠 71% | +| attendance-checkin | 5 | 2 | 🟠 71% | +| attendance-settings | 1 | 2 | 🔴 33% | +| company-info | 5 | 2 | 🟠 71% | +| customer-inquiry | 1 | 2 | 🔴 33% | +| department-add | 5 | 2 | 🟠 71% | +| employee-register | 1 | 2 | 🔴 33% | +| item-management | 5 | 2 | 🟠 71% | +| sales-management | 4 | 2 | 🟠 67% | +| bad-debt-collection | 1 | 1 | 🟠 50% | +| bank-account-management | 1 | 1 | 🟠 50% | +| bank-transactions | 1 | 1 | 🟠 50% | +| batch-create-acc-deposit | 3 | 1 | 🟠 75% | +| bill-management | 1 | 1 | 🟠 50% | +| board-management | 5 | 1 | 🟡 83% | +| board-test | 6 | 1 | 🟡 86% | +| card-add | 1 | 1 | 🟠 50% | +| card-transactions | 1 | 1 | 🟠 50% | +| comprehensive-analysis | 1 | 1 | 🟠 50% | +| create-delete-acc-bills | 3 | 1 | 🟠 75% | +| create-delete-acc-deposit | 3 | 1 | 🟠 75% | +| create-delete-board | 3 | 1 | 🟠 75% | +| daily-report | 1 | 1 | 🟠 50% | +| deposit-management | 5 | 1 | 🟡 83% | +| draft-box | 6 | 1 | 🟡 86% | +| event-board | 1 | 1 | 🟠 50% | +| expected-expenses | 1 | 1 | 🟠 50% | +| faq | 1 | 1 | 🟠 50% | +| free-board | 6 | 1 | 🟡 86% | +| full-crud-acc-bills | 3 | 1 | 🟠 75% | +| full-crud-acc-deposit | 3 | 1 | 🟠 75% | +| full-crud-acc-sales | 3 | 1 | 🟠 75% | +| inventory-status | 1 | 1 | 🟠 50% | +| item-standard-management | 1 | 1 | 🟠 50% | +| leave-policy | 1 | 1 | 🟠 50% | +| notification-settings | 1 | 1 | 🟠 50% | +| order-management | 1 | 1 | 🟠 50% | +| permission-management | 1 | 1 | 🟠 50% | +| popup-management | 1 | 1 | 🟠 50% | +| position-management | 1 | 1 | 🟠 50% | +| price-management | 1 | 1 | 🟠 50% | +| process-management | 1 | 1 | 🟠 50% | +| production-dashboard | 5 | 1 | 🟡 83% | +| quality-certification | 5 | 1 | 🟡 83% | +| rank-management | 1 | 1 | 🟠 50% | +| receivables-status | 1 | 1 | 🟠 50% | +| receiving-management | 1 | 1 | 🟠 50% | +| reference-box | 5 | 1 | 🟡 83% | +| reload-persist-acc-bills | 3 | 1 | 🟠 75% | +| reload-persist-acc-deposit | 3 | 1 | 🟠 75% | +| reload-persist-acc-sales | 3 | 1 | 🟠 75% | +| salary-management | 1 | 1 | 🟠 50% | +| search-options-hr | 4 | 1 | 🟡 80% | +| shipment-management | 1 | 1 | 🟠 50% | +| vacation-management | 1 | 1 | 🟠 50% | +| vendor-ledger | 5 | 1 | 🟡 83% | +| withdrawal-management | 5 | 1 | 🟡 83% | +| work-order-management | 1 | 1 | 🟠 50% | +| worker-screen | 1 | 1 | 🟠 50% | + +## 📊 트렌드 분석 +| 항목 | 이전 실행 | 현재 실행 | 변화 | +|------|---------|---------|------| +| 전체 | 1 | 204 | +203 | +| 성공 | 1 | 193 | 📈 +192 | +| 실패 | 0 | 11 | 📉 +11 | + +이전 실행: 2026-03-08_13-40-46 diff --git a/Fail-batch-create-acc-deposit_2026-03-08_14-47-49.md b/Fail-batch-create-acc-deposit_2026-03-08_14-47-49.md new file mode 100644 index 0000000..b75c22b --- /dev/null +++ b/Fail-batch-create-acc-deposit_2026-03-08_14-47-49.md @@ -0,0 +1,65 @@ +# ❌ E2E 테스트 실패: 연속 등록 테스트: 입금관리 + +**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-03-08_14-47-49 | **결과**: FAIL +**소요 시간**: 51.2초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 18 | 1 | 0 | 95% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | E2E_TEST_ 데이터 없음 (ts=20260308_144707) | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 6159ms | CREATE_1 | +| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2006ms | evaluate ok | +| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1506ms | Waited 1500ms | +| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 6162ms | CREATE_2 | +| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2008ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1505ms | Waited 1500ms | +| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 6160ms | CREATE_3 | +| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2007ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 16 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1001ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ❌ | 4020ms | E2E_TEST_ 데이터 없음 (ts=20260308_144707) | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 91ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **empty_data** | +| 스크린샷 | diag_batch-create-acc-deposit_2026-03-08_14-47-49.png | + +### 권장 조치 +1. API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 581 | +| 테이블 행 | 0 | +| API 호출 수 | 4 | +| 로딩 스피너 | No | diff --git a/Fail-create-delete-acc-bills_2026-03-08_14-51-10.md b/Fail-create-delete-acc-bills_2026-03-08_14-51-10.md new file mode 100644 index 0000000..4bf9efe --- /dev/null +++ b/Fail-create-delete-acc-bills_2026-03-08_14-51-10.md @@ -0,0 +1,51 @@ +# ❌ E2E 테스트 실패: Create+Delete 테스트: 어음관리 + +**테스트 ID**: create-delete-acc-bills | **실행**: 2026-03-08_14-51-10 | **결과**: FAIL +**소요 시간**: 29.8초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 8 | 7 | 1 | 0 | 88% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | E2E_TEST_ 데이터 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8605ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1001ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | ❌ | 4029ms | E2E_TEST_ 데이터 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 7 | 7 | 0 | 371ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_create-delete-acc-bills_2026-03-08_14-51-10.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 680 | +| 테이블 행 | 1 | +| API 호출 수 | 7 | +| 로딩 스피너 | No | diff --git a/Fail-create-delete-acc-deposit_2026-03-08_14-51-37.md b/Fail-create-delete-acc-deposit_2026-03-08_14-51-37.md new file mode 100644 index 0000000..0f3ddff --- /dev/null +++ b/Fail-create-delete-acc-deposit_2026-03-08_14-51-37.md @@ -0,0 +1,54 @@ +# ❌ E2E 테스트 실패: Create+Delete 테스트: 입금관리 + +**테스트 ID**: create-delete-acc-deposit | **실행**: 2026-03-08_14-51-37 | **결과**: FAIL +**소요 시간**: 27.3초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 8 | 7 | 1 | 0 | 88% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | E2E_TEST_ 데이터 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 6163ms | CREATE | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2003ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1001ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ❌ | 4022ms | E2E_TEST_ 데이터 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 299ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **empty_data** | +| 스크린샷 | diag_create-delete-acc-deposit_2026-03-08_14-51-37.png | + +### 권장 조치 +1. API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 566 | +| 테이블 행 | 0 | +| API 호출 수 | 9 | +| 로딩 스피너 | No | diff --git a/Fail-create-delete-board_2026-03-08_14-52-06.md b/Fail-create-delete-board_2026-03-08_14-52-06.md new file mode 100644 index 0000000..13f39ea --- /dev/null +++ b/Fail-create-delete-board_2026-03-08_14-52-06.md @@ -0,0 +1,55 @@ +# ❌ E2E 테스트 실패: Create+Delete 테스트: 자유게시판 + +**테스트 ID**: create-delete-board | **실행**: 2026-03-08_14-52-06 | **결과**: FAIL +**소요 시간**: 28.2초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 8 | 6 | 2 | 0 | 75% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | evaluate returned ok:false | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | E2E_TEST_ 데이터 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5918ms | CREATE | +| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ❌ | 4527ms | evaluate returned ok:false | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ❌ | 1520ms | E2E_TEST_ 데이터 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 1117ms | 1 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **empty_data** | +| 스크린샷 | diag_create-delete-board_2026-03-08_14-52-05.png | + +### 권장 조치 +1. API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 424 | +| 테이블 행 | 0 | +| API 호출 수 | 9 | +| 로딩 스피너 | No | diff --git a/Fail-full-crud-acc-bills_2026-03-08_15-05-14.md b/Fail-full-crud-acc-bills_2026-03-08_15-05-14.md new file mode 100644 index 0000000..97c2a88 --- /dev/null +++ b/Fail-full-crud-acc-bills_2026-03-08_15-05-14.md @@ -0,0 +1,69 @@ +# ❌ E2E 테스트 실패: Full CRUD 테스트: 어음관리 (Enhanced) + +**테스트 ID**: full-crud-acc-bills | **실행**: 2026-03-08_15-05-14 | **결과**: FAIL +**소요 시간**: 55.9초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 26 | 25 | 1 | 0 | 96% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 26 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 (행 클릭 → 삭제 → 확인) | DELETE | 삭제 버튼 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] ts 초기화 + sessionStorage 연동 | - | ✅ | 1ms | evaluate ok | +| 3 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 어음관리] [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 2502ms | CREATE_OPEN | +| 5 | [회계관리 > 어음관리] [CREATE] 폼 로드 대기 | - | ✅ | 1503ms | Waited 1500ms | +| 6 | [회계관리 > 어음관리] [CREATE] 어음번호 + 거래처(combobox) + 금액 + 비고 입력 | CREATE | ✅ | 11839ms | CREATE_FILL | +| 7 | [회계관리 > 어음관리] [CREATE] 발행일 + 만기일 날짜 선택 (date picker) | CREATE | ✅ | 2265ms | CREATE_DATES | +| 8 | [회계관리 > 어음관리] [CREATE] 금액 콤마 포맷 검증 (10,000) | VERIFY | ✅ | 306ms | VERIFY_AMOUNT_FORMAT / 금액 미감지 (입력 직후 포맷 지연 가능, step 18에서 재검증) | +| 9 | [회계관리 > 어음관리] [CREATE] 등록 제출 | CREATE | ✅ | 3002ms | CREATE_SUBMIT | +| 10 | [회계관리 > 어음관리] [CREATE] API POST 검증 | VERIFY | ✅ | 505ms | API_POST_CHECK / POST API 200 (274ms) | +| 11 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 12 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2001ms | evaluate ok | +| 13 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [VERIFY-CREATE] 목록에서 생성 데이터 + 첫행 셀값 캡처 | VERIFY | ✅ | 507ms | VERIFY_CREATE / rows:20 | +| 15 | [회계관리 > 어음관리] [READ] 상세 페이지 진입 (E2E_TEST_ 행 클릭) | READ | ✅ | 2511ms | READ | +| 16 | [회계관리 > 어음관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 17 | [회계관리 > 어음관리] [READ] 상세 필드별 1:1 대조 (목록↔상세 roundtrip) | READ | ✅ | 1ms | DETAIL_VERIFY | +| 18 | [회계관리 > 어음관리] [READ] 금액 10,000 표시 확인 | VERIFY | ✅ | 0ms | READ_AMOUNT / 금액 10,000 미감지 (포맷 차이 가능) | +| 19 | [회계관리 > 어음관리] [UPDATE] 수정 버튼 클릭 + 금액 20,000 변경 + 비고 변경 | UPDATE | ✅ | 2232ms | UPDATE | +| 20 | [회계관리 > 어음관리] [UPDATE] 저장 클릭 | UPDATE | ✅ | 3003ms | UPDATE_SAVE | +| 21 | [회계관리 > 어음관리] [UPDATE] API PUT 검증 | VERIFY | ✅ | 514ms | API_PUT_CHECK / PUT/PATCH API 미감지 | +| 22 | [회계관리 > 어음관리] [UPDATE] 수정 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 23 | [회계관리 > 어음관리] [UPDATE] 수정 내용 검증 (금액 20,000 + 비고 수정됨) | VERIFY | ✅ | 1ms | VERIFY_UPDATE / 금액 20,000 확인 / 비고 수정됨 미감지 | +| 24 | [회계관리 > 어음관리] [UPDATE] 목록 복귀 | UPDATE | ✅ | 0ms | evaluate ok | +| 25 | [회계관리 > 어음관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 26 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 (행 클릭 → 삭제 → 확인) | DELETE | ❌ | 4027ms | 삭제 버튼 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 18 | 18 | 0 | 107ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_full-crud-acc-bills_2026-03-08_15-05-14.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 680 | +| 테이블 행 | 1 | +| API 호출 수 | 18 | +| 로딩 스피너 | No | diff --git a/Fail-full-crud-acc-deposit_2026-03-08_15-06-01.md b/Fail-full-crud-acc-deposit_2026-03-08_15-06-01.md new file mode 100644 index 0000000..b9ebf76 --- /dev/null +++ b/Fail-full-crud-acc-deposit_2026-03-08_15-06-01.md @@ -0,0 +1,76 @@ +# ❌ E2E 테스트 실패: Full CRUD 테스트: 입금관리 (금액포맷+상세대조+API검증) + +**테스트 ID**: full-crud-acc-deposit | **실행**: 2026-03-08_15-06-01 | **결과**: FAIL +**소요 시간**: 46.9초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 30 | 29 | 1 | 0 | 97% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 30 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | 삭제 버튼 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [SETUP] 타임스탬프 초기화 + sessionStorage 저장 | SETUP | ✅ | 0ms | evaluate ok | +| 4 | [회계관리 > 입금관리] [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 2503ms | CREATE_OPEN | +| 5 | [회계관리 > 입금관리] [CREATE] 등록 폼 로드 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 6 | [회계관리 > 입금관리] [CREATE] 입금자명 + 입금금액(50,000) + 적요 입력 | CREATE | ✅ | 639ms | FILL_BASIC | +| 7 | [회계관리 > 입금관리] [CREATE] 금액 포맷 검증: 50000 → '50,000' 콤마 표시 | VERIFY | ✅ | 301ms | AMT_FORMAT_CHECK / ✅ 금액 콤마 포맷: 50,000 | +| 8 | [회계관리 > 입금관리] [CREATE] 입금유형 콤보박스 선택 | CREATE | ✅ | 0ms | TYPE_COMBO | +| 9 | [회계관리 > 입금관리] [CREATE] 거래처 콤보박스 선택 | CREATE | ✅ | 0ms | VENDOR_COMBO | +| 10 | [회계관리 > 입금관리] [CREATE] 입금일 날짜 선택 (오늘) | CREATE | ✅ | 908ms | DATE_SELECT | +| 11 | [회계관리 > 입금관리] [CREATE] 등록 클릭 | CREATE | ✅ | 3005ms | SUBMIT | +| 12 | [회계관리 > 입금관리] [CREATE] API POST 검증 | VERIFY | ✅ | 502ms | API_POST_CHECK / ✅ POST 200 (221ms) | +| 13 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 14 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2014ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 16 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 + 목록 행 캡처 | VERIFY | ✅ | 501ms | VERIFY_CREATE / rows:20 | +| 17 | [회계관리 > 입금관리] [READ] 상세 페이지 진입 | READ | ✅ | 2508ms | READ | +| 18 | [회계관리 > 입금관리] [READ] 상세 페이지 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 19 | [회계관리 > 입금관리] [READ] 목록↔상세 필드 1:1 대조 (detail roundtrip) | VERIFY | ✅ | 1ms | DETAIL_ROUNDTRIP / 상세 대조: 5/5 (100%) | +| 20 | [회계관리 > 입금관리] [READ] 상세 데이터 검증 (입금자+금액50000+적요) | READ | ✅ | 1ms | READ_VERIFY / E2E=true amount=false | +| 21 | [회계관리 > 입금관리] [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 2017ms | UPDATE_ENTER | +| 22 | [회계관리 > 입금관리] [UPDATE] 금액 50,000→75,000 변경 + 적요 수정 | UPDATE | ✅ | 1034ms | UPDATE_FIELDS | +| 23 | [회계관리 > 입금관리] [UPDATE] 금액 변경 포맷 검증: 75,000 표시 확인 | VERIFY | ✅ | 303ms | AMT_UPDATE_FORMAT / ⚠️ 75,000 미감지 - 저장 후 확인 필요 | +| 24 | [회계관리 > 입금관리] [UPDATE] 저장 클릭 | UPDATE | ✅ | 3003ms | UPDATE_SAVE | +| 25 | [회계관리 > 입금관리] [UPDATE] API PUT/PATCH 검증 | VERIFY | ✅ | 507ms | API_PUT_CHECK / ⚠️ PUT/PATCH 미감지 | +| 26 | [회계관리 > 입금관리] [UPDATE] 저장 후 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 27 | [회계관리 > 입금관리] [UPDATE] 수정 내용 검증 (적요 수정됨 + 금액 75,000) | UPDATE | ✅ | 1ms | VERIFY_UPDATE / 수정됨=true 75000=true toast=false | +| 28 | [회계관리 > 입금관리] [UPDATE] 목록 복귀 | UPDATE | ✅ | 1ms | evaluate ok | +| 29 | [회계관리 > 입금관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 30 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ❌ | 4012ms | 삭제 버튼 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 96ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **empty_data** | +| 스크린샷 | diag_full-crud-acc-deposit_2026-03-08_15-06-01.png | + +### 권장 조치 +1. API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 566 | +| 테이블 행 | 0 | +| API 호출 수 | 23 | +| 로딩 스피너 | No | diff --git a/Fail-full-crud-acc-sales_2026-03-08_15-06-49.md b/Fail-full-crud-acc-sales_2026-03-08_15-06-49.md new file mode 100644 index 0000000..30affe0 --- /dev/null +++ b/Fail-full-crud-acc-sales_2026-03-08_15-06-49.md @@ -0,0 +1,72 @@ +# ❌ E2E 테스트 실패: Full CRUD 테스트: 매출관리 (계산검증+상세대조+API검증) + +**테스트 ID**: full-crud-acc-sales | **실행**: 2026-03-08_15-06-49 | **결과**: FAIL +**소요 시간**: 48.1초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 29 | 28 | 1 | 0 | 97% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 29 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 | DELETE | 삭제 버튼 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5006ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [SETUP] 타임스탬프 초기화 + sessionStorage 저장 | SETUP | ✅ | 0ms | evaluate ok | +| 4 | [회계관리 > 매출관리] [CREATE] 매출 등록 버튼 클릭 | CREATE | ✅ | 2517ms | CREATE_OPEN | +| 5 | [회계관리 > 매출관리] [CREATE] 등록 폼 로드 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [CREATE] 거래처 콤보박스 선택 | CREATE | ✅ | 1115ms | VENDOR_SELECT | +| 7 | [회계관리 > 매출관리] [CREATE] 매출유형 콤보박스 선택 (제품매출) | CREATE | ✅ | 1ms | TYPE_SELECT | +| 8 | [회계관리 > 매출관리] [CREATE] 품목명·수량(5)·단가(100,000)·적요 입력 | CREATE | ✅ | 1242ms | FILL_FIELDS | +| 9 | [회계관리 > 매출관리] [CREATE] 자동계산 검증: 수량(5)×단가(100,000)=공급가액(500,000), 부가세(50,000), 합계(550,000) | VERIFY | ✅ | 515ms | CALC_VERIFY_CREATE / ⚠️ 공급 500,000 미감지 / ⚠️ 부가세 50,000 미감지 / ⚠️ 합계 550,000 미감지 | +| 10 | [회계관리 > 매출관리] [CREATE] 등록 클릭 | CREATE | ✅ | 3007ms | SUBMIT | +| 11 | [회계관리 > 매출관리] [CREATE] API POST 검증 | VERIFY | ✅ | 508ms | API_POST_CHECK / ✅ POST 200 (92ms) | +| 12 | [회계관리 > 매출관리] [CREATE] 생성 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 13 | [회계관리 > 매출관리] [CREATE] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 14 | [회계관리 > 매출관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 15 | [회계관리 > 매출관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 507ms | VERIFY_CREATE / rows:20 | +| 16 | [회계관리 > 매출관리] [READ] 상세 페이지 진입 | READ | ✅ | 2506ms | READ | +| 17 | [회계관리 > 매출관리] [READ] 상세 페이지 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 18 | [회계관리 > 매출관리] [READ] 목록↔상세 필드 1:1 대조 (detail roundtrip) | VERIFY | ✅ | 1ms | DETAIL_ROUNDTRIP / 상세 대조: 6/6 (100%) | +| 19 | [회계관리 > 매출관리] [READ] 상세 필드값 검증 (E2E데이터+수량5+단가100000+공급500000) | READ | ✅ | 0ms | READ_VERIFY / E2E=true qty=true price=false supply=false vat=false total=false | +| 20 | [회계관리 > 매출관리] [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 2013ms | UPDATE_ENTER | +| 21 | [회계관리 > 매출관리] [UPDATE] 수량 5→10 변경 + 적요 수정 | UPDATE | ✅ | 1022ms | UPDATE_FIELDS | +| 22 | [회계관리 > 매출관리] [UPDATE] 재계산 검증: 10×100,000=공급(1,000,000), 부가세(100,000), 합계(1,100,000) | VERIFY | ✅ | 512ms | CALC_VERIFY_UPDATE / ⚠️ 공급 1,000,000 미감지 / ⚠️ 부가세 100,000 미감지 (단가와 동일값 주의) / ⚠️ | +| 23 | [회계관리 > 매출관리] [UPDATE] 저장 클릭 | UPDATE | ✅ | 3003ms | UPDATE_SAVE | +| 24 | [회계관리 > 매출관리] [UPDATE] API PUT/PATCH 검증 | VERIFY | ✅ | 502ms | API_PUT_CHECK / ⚠️ PUT/PATCH 미감지 | +| 25 | [회계관리 > 매출관리] [UPDATE] 저장 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 26 | [회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산) | UPDATE | ✅ | 2ms | VERIFY_UPDATE / edit mode exited (save successful) | +| 27 | [회계관리 > 매출관리] [UPDATE] 목록 복귀 | UPDATE | ✅ | 0ms | evaluate ok | +| 28 | [회계관리 > 매출관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 29 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 | DELETE | ❌ | 4027ms | 삭제 버튼 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_full-crud-acc-sales_2026-03-08_15-06-49.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 656 | +| 테이블 행 | 2 | +| API 호출 수 | 23 | +| 로딩 스피너 | No | diff --git a/Fail-reload-persist-acc-bills_2026-03-08_15-24-23.md b/Fail-reload-persist-acc-bills_2026-03-08_15-24-23.md new file mode 100644 index 0000000..3229517 --- /dev/null +++ b/Fail-reload-persist-acc-bills_2026-03-08_15-24-23.md @@ -0,0 +1,57 @@ +# ❌ E2E 테스트 실패: 새로고침 데이터 유지 검증: 어음관리 + +**테스트 ID**: reload-persist-acc-bills | **실행**: 2026-03-08_15-24-23 | **결과**: FAIL +**소요 시간**: 37.3초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 13 | 1 | 0 | 93% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 14 | [회계관리 > 어음관리] [DELETE] 테스트 데이터 삭제 | DELETE | E2E_TEST_ 행 없음 (ts=20260308_152355) | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8597ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2006ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 | - | ✅ | 2011ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 새로고침 전 데이터 확인 | VERIFY | ✅ | 518ms | VERIFY / rows:20 | +| 8 | [회계관리 > 어음관리] [RELOAD] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 9 | [회계관리 > 어음관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] [RELOAD] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] [VERIFY] E2E 데이터 검색 | - | ✅ | 1003ms | Searched: "E2E_TEST_EB" | +| 12 | [회계관리 > 어음관리] [VERIFY] 검색 결과 대기 | - | ✅ | 1500ms | Waited 1500ms | +| 13 | [회계관리 > 어음관리] [VERIFY] 새로고침 후 데이터 유지 확인 | VERIFY | ✅ | 507ms | VERIFY / rows:20 | +| 14 | [회계관리 > 어음관리] [DELETE] 테스트 데이터 삭제 | DELETE | ❌ | 4035ms | E2E_TEST_ 행 없음 (ts=20260308_152355) | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_reload-persist-acc-bills_2026-03-08_15-24-23.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 696 | +| 테이블 행 | 1 | +| API 호출 수 | 4 | +| 로딩 스피너 | No | diff --git a/Fail-reload-persist-acc-deposit_2026-03-08_15-25-07.md b/Fail-reload-persist-acc-deposit_2026-03-08_15-25-07.md new file mode 100644 index 0000000..53d09b2 --- /dev/null +++ b/Fail-reload-persist-acc-deposit_2026-03-08_15-25-07.md @@ -0,0 +1,58 @@ +# ❌ E2E 테스트 실패: 새로고침 데이터 유지 검증: 입금관리 + +**테스트 ID**: reload-persist-acc-deposit | **실행**: 2026-03-08_15-25-07 | **결과**: FAIL +**소요 시간**: 44.1초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 11 | 1 | 0 | 92% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 12 | [회계관리 > 입금관리] [DELETE] 테스트 데이터 삭제 | DELETE | E2E_TEST_ 행 없음 (ts=20260308_152432) | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 10913ms | CREATE / W:등록 성공(API/토스트 확인) but 리다이렉트 미동작 | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2002ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 | - | ✅ | 2001ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 새로고침 전 데이터 확인 | VERIFY | ✅ | 505ms | VERIFY / rows:20 | +| 8 | [회계관리 > 입금관리] [RELOAD] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 9 | [회계관리 > 입금관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5002ms | Waited 5000ms | +| 10 | [회계관리 > 입금관리] [RELOAD] SPA 안정화 대기 | - | ✅ | 5004ms | Waited 5000ms | +| 11 | [회계관리 > 입금관리] [VERIFY] 새로고침 후 데이터 유지 확인 | VERIFY | ✅ | 501ms | VERIFY / rows:20 | +| 12 | [회계관리 > 입금관리] [DELETE] 테스트 데이터 삭제 | DELETE | ❌ | 4025ms | E2E_TEST_ 행 없음 (ts=20260308_152432) | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **empty_data** | +| 스크린샷 | diag_reload-persist-acc-deposit_2026-03-08_15-25-07.png | + +### 권장 조치 +1. API 응답은 있으나 테이블 데이터 없음. 데이터 변환 또는 필터 문제 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 581 | +| 테이블 행 | 0 | +| API 호출 수 | 4 | +| 로딩 스피너 | No | diff --git a/Fail-reload-persist-acc-sales_2026-03-08_15-25-48.md b/Fail-reload-persist-acc-sales_2026-03-08_15-25-48.md new file mode 100644 index 0000000..46599b5 --- /dev/null +++ b/Fail-reload-persist-acc-sales_2026-03-08_15-25-48.md @@ -0,0 +1,56 @@ +# ❌ E2E 테스트 실패: 새로고침 데이터 유지 검증: 매출관리 + +**테스트 ID**: reload-persist-acc-sales | **실행**: 2026-03-08_15-25-48 | **결과**: FAIL +**소요 시간**: 40.9초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 12 | 1 | 0 | 92% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 13 | [회계관리 > 매출관리] [DELETE] 테스트 데이터 삭제 | DELETE | E2E_TEST_ 행 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5007ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CREATE] 매출 등록 | CREATE | ✅ | 7761ms | CREATE | +| 4 | [회계관리 > 매출관리] [CREATE] 생성 후 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 5 | [회계관리 > 매출관리] [CREATE] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 6 | [회계관리 > 매출관리] [CREATE] 목록 안정화 | - | ✅ | 2000ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [VERIFY] 새로고침 전 데이터 확인 | VERIFY | ✅ | 501ms | VERIFY_BEFORE / rows:20 | +| 8 | [회계관리 > 매출관리] [RELOAD] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 9 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5002ms | Waited 5000ms | +| 10 | [회계관리 > 매출관리] [RELOAD] SPA 안정화 대기 | - | ✅ | 5005ms | Waited 5000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 새로고침 후 데이터 유지 확인 | VERIFY | ✅ | 501ms | VERIFY_AFTER / rows:20 | +| 12 | [회계관리 > 매출관리] [VERIFY] 행 수 비교 | VERIFY | ✅ | 0ms | ROW_COUNT_COMPARE / ⚠️ 행 수 불일치 (0 → 20) | +| 13 | [회계관리 > 매출관리] [DELETE] 테스트 데이터 삭제 | DELETE | ❌ | 4016ms | E2E_TEST_ 행 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_reload-persist-acc-sales_2026-03-08_15-25-48.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 671 | +| 테이블 행 | 2 | +| API 호출 수 | 3 | +| 로딩 스피너 | No | diff --git a/Fail-sales-management_2026-03-08_15-27-55.md b/Fail-sales-management_2026-03-08_15-27-55.md new file mode 100644 index 0000000..efecc60 --- /dev/null +++ b/Fail-sales-management_2026-03-08_15-27-55.md @@ -0,0 +1,62 @@ +# ❌ E2E 테스트 실패: Full CRUD 테스트: 매출관리 + +**테스트 ID**: sales-management | **실행**: 2026-03-08_15-27-55 | **결과**: FAIL +**소요 시간**: 52.3초 | **중단 사유**: critical_failure + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 18 | 1 | 0 | 95% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 19 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 (첫 행 → 상세 → 삭제 → 확인) | DELETE | 삭제 버튼 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [INSPECT] UI 구조 검증 + 초기 행수 저장 | INSPECT | ✅ | 1ms | INSPECT / rows:20,cols:9 / rows:20 | +| 4 | [회계관리 > 매출관리] [CREATE] 매출 등록 버튼 클릭 | CREATE | ✅ | 304ms | Clicked button: 등록 | +| 5 | [회계관리 > 매출관리] [CREATE] 등록 폼 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 6 | [회계관리 > 매출관리] [CREATE] 거래처+매출유형+품목 입력 + 자동계산 검증 + 등록 | CREATE | ✅ | 8693ms | CREATE | +| 7 | [회계관리 > 매출관리] [CREATE] 등록 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 8 | [회계관리 > 매출관리] [CREATE] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 9 | [회계관리 > 매출관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 10 | [회계관리 > 매출관리] [VERIFY] 생성 데이터 확인 (행수 증가 + 금액 대조) | VERIFY | ✅ | 512ms | VERIFY_CREATE / rows:20 | +| 11 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 페이지 진입 | READ | ✅ | 2505ms | READ | +| 12 | [회계관리 > 매출관리] [READ] 상세 페이지 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 13 | [회계관리 > 매출관리] [READ] 상세 데이터 검증 (E2E_TEST_ 품목명/적요/금액) | READ | ✅ | 1ms | READ_VERIFY | +| 14 | [회계관리 > 매출관리] [UPDATE] 수정 모드 진입 + 수량 변경(10→20) + 재계산 검증 + 저장 | UPDATE | ✅ | 7644ms | UPDATE | +| 15 | [회계관리 > 매출관리] [UPDATE] 저장 후 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 16 | [회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산 확인) | UPDATE | ✅ | 2504ms | VERIFY_UPDATE / save redirected to list (toast expired), verifying via row click | +| 17 | [회계관리 > 매출관리] [UPDATE] 목록 복귀 | UPDATE | ✅ | 2011ms | evaluate ok | +| 18 | [회계관리 > 매출관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 19 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 (첫 행 → 상세 → 삭제 → 확인) | DELETE | ❌ | 4024ms | 삭제 버튼 없음 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 28 | 28 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_sales-management_2026-03-08_15-27-55.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 656 | +| 테이블 행 | 2 | +| API 호출 수 | 28 | +| 로딩 스피너 | No | diff --git a/success/OK-a11y-acc-client_2026-03-08_14-34-15.md b/success/OK-a11y-acc-client_2026-03-08_14-34-15.md new file mode 100644 index 0000000..0e707bf --- /dev/null +++ b/success/OK-a11y-acc-client_2026-03-08_14-34-15.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 거래처관리 + +**테스트 ID**: a11y-acc-client | **실행**: 2026-03-08_14-34-15 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1518ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2218ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/success/OK-a11y-acc-deposit_2026-03-08_14-34-27.md b/success/OK-a11y-acc-deposit_2026-03-08_14-34-27.md new file mode 100644 index 0000000..ed2c079 --- /dev/null +++ b/success/OK-a11y-acc-deposit_2026-03-08_14-34-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 입금관리 + +**테스트 ID**: a11y-acc-deposit | **실행**: 2026-03-08_14-34-27 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1508ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2219ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/success/OK-a11y-acc-purchase_2026-03-08_14-34-38.md b/success/OK-a11y-acc-purchase_2026-03-08_14-34-38.md new file mode 100644 index 0000000..93cf091 --- /dev/null +++ b/success/OK-a11y-acc-purchase_2026-03-08_14-34-38.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매입관리 + +**테스트 ID**: a11y-acc-purchase | **실행**: 2026-03-08_14-34-38 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2226ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/success/OK-a11y-acc-sales_2026-03-08_14-34-51.md b/success/OK-a11y-acc-sales_2026-03-08_14-34-51.md new file mode 100644 index 0000000..9f01298 --- /dev/null +++ b/success/OK-a11y-acc-sales_2026-03-08_14-34-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매출관리 + +**테스트 ID**: a11y-acc-sales | **실행**: 2026-03-08_14-34-51 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1518ms | A11y: score=0 FAIL (C:0 S:63 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2237ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/success/OK-a11y-approval-box_2026-03-08_14-35-02.md b/success/OK-a11y-approval-box_2026-03-08_14-35-02.md new file mode 100644 index 0000000..ce284a5 --- /dev/null +++ b/success/OK-a11y-approval-box_2026-03-08_14-35-02.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-08_14-35-02 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2254ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/success/OK-a11y-approval-draft_2026-03-08_14-35-14.md b/success/OK-a11y-approval-draft_2026-03-08_14-35-14.md new file mode 100644 index 0000000..585d28a --- /dev/null +++ b/success/OK-a11y-approval-draft_2026-03-08_14-35-14.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 기안함 + +**테스트 ID**: a11y-approval-draft | **실행**: 2026-03-08_14-35-14 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 2 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 0ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2195ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/success/OK-a11y-board-free_2026-03-08_14-35-26.md b/success/OK-a11y-board-free_2026-03-08_14-35-26.md new file mode 100644 index 0000000..e68ff20 --- /dev/null +++ b/success/OK-a11y-board-free_2026-03-08_14-35-26.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 게시판 > 자유게시판 + +**테스트 ID**: a11y-board-free | **실행**: 2026-03-08_14-35-26 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1523ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2176ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/success/OK-a11y-hr-attendance_2026-03-08_14-35-39.md b/success/OK-a11y-hr-attendance_2026-03-08_14-35-39.md new file mode 100644 index 0000000..aa9981f --- /dev/null +++ b/success/OK-a11y-hr-attendance_2026-03-08_14-35-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-08_14-35-39 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1522ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2239ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/success/OK-a11y-hr-department_2026-03-08_14-35-52.md b/success/OK-a11y-hr-department_2026-03-08_14-35-52.md new file mode 100644 index 0000000..f32b50a --- /dev/null +++ b/success/OK-a11y-hr-department_2026-03-08_14-35-52.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 부서관리 + +**테스트 ID**: a11y-hr-department | **실행**: 2026-03-08_14-35-52 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=부서관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1505ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2233ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | diff --git a/success/OK-a11y-hr-employee_2026-03-08_14-36-04.md b/success/OK-a11y-hr-employee_2026-03-08_14-36-04.md new file mode 100644 index 0000000..062f519 --- /dev/null +++ b/success/OK-a11y-hr-employee_2026-03-08_14-36-04.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 사원관리 + +**테스트 ID**: a11y-hr-employee | **실행**: 2026-03-08_14-36-04 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1510ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2171ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/success/OK-a11y-hr-salary_2026-03-08_14-36-16.md b/success/OK-a11y-hr-salary_2026-03-08_14-36-16.md new file mode 100644 index 0000000..1cd4cf8 --- /dev/null +++ b/success/OK-a11y-hr-salary_2026-03-08_14-36-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-08_14-36-16 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 2 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2284ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/salary-management | diff --git a/success/OK-a11y-material-receiving_2026-03-08_14-36-28.md b/success/OK-a11y-material-receiving_2026-03-08_14-36-28.md new file mode 100644 index 0000000..1ab9814 --- /dev/null +++ b/success/OK-a11y-material-receiving_2026-03-08_14-36-28.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 입고관리 + +**테스트 ID**: a11y-material-receiving | **실행**: 2026-03-08_14-36-28 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 5 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1514ms | A11y: score=60 FAIL (C:0 S:8 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2208ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/material/receiving-management | diff --git a/success/OK-a11y-material-stock_2026-03-08_14-36-39.md b/success/OK-a11y-material-stock_2026-03-08_14-36-39.md new file mode 100644 index 0000000..7dd9662 --- /dev/null +++ b/success/OK-a11y-material-stock_2026-03-08_14-36-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-08_14-36-39 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 0ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2194ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/material/stock-status | diff --git a/success/OK-a11y-prod-item_2026-03-08_14-36-51.md b/success/OK-a11y-prod-item_2026-03-08_14-36-51.md new file mode 100644 index 0000000..591aa84 --- /dev/null +++ b/success/OK-a11y-prod-item_2026-03-08_14-36-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 품목관리 + +**테스트 ID**: a11y-prod-item | **실행**: 2026-03-08_14-36-51 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=품목기준관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 0ms | A11y: score=88 PASS (C:0 S:2 M:1) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2184ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/dashboard | diff --git a/success/OK-a11y-prod-work-order_2026-03-08_14-37-03.md b/success/OK-a11y-prod-work-order_2026-03-08_14-37-03.md new file mode 100644 index 0000000..980d3c6 --- /dev/null +++ b/success/OK-a11y-prod-work-order_2026-03-08_14-37-03.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 작업지시 + +**테스트 ID**: a11y-prod-work-order | **실행**: 2026-03-08_14-37-03 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1506ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2206ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/success/OK-a11y-sales-client_2026-03-08_14-37-16.md b/success/OK-a11y-sales-client_2026-03-08_14-37-16.md new file mode 100644 index 0000000..23d2fa8 --- /dev/null +++ b/success/OK-a11y-sales-client_2026-03-08_14-37-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 거래처관리 + +**테스트 ID**: a11y-sales-client | **실행**: 2026-03-08_14-37-16 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1520ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2184ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/success/OK-a11y-sales-estimate_2026-03-08_14-37-27.md b/success/OK-a11y-sales-estimate_2026-03-08_14-37-27.md new file mode 100644 index 0000000..d258ad1 --- /dev/null +++ b/success/OK-a11y-sales-estimate_2026-03-08_14-37-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 견적관리 + +**테스트 ID**: a11y-sales-estimate | **실행**: 2026-03-08_14-37-27 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2218ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/quote-management | diff --git a/success/OK-a11y-sales-order_2026-03-08_14-37-40.md b/success/OK-a11y-sales-order_2026-03-08_14-37-40.md new file mode 100644 index 0000000..d7a99ff --- /dev/null +++ b/success/OK-a11y-sales-order_2026-03-08_14-37-40.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 수주관리 + +**테스트 ID**: a11y-sales-order | **실행**: 2026-03-08_14-37-40 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 12 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1508ms | A11y: score=25 FAIL (C:0 S:15 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2201ms | Keyboard: 0 focusable, 0 with indicator, allVisible=true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/order-management-sales | diff --git a/success/OK-accounting-bad-debt_2026-03-08_14-37-51.md b/success/OK-accounting-bad-debt_2026-03-08_14-37-51.md new file mode 100644 index 0000000..ffa5bd7 --- /dev/null +++ b/success/OK-accounting-bad-debt_2026-03-08_14-37-51.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 악성채권추심관리 테스트 + +**테스트 ID**: accounting-bad-debt | **실행**: 2026-03-08_14-37-51 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 22 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ✅ | 508ms | Menu navigation: 회계관리 > 악성채권추심관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bad-debt-collection | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 60 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 16 "... is not valid JSON/raw:Stats: 16 | +| 5 | 악성채권 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 5 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 8 | [CREATE] 채권 등록 버튼 클릭 | CREATE | ✅ | 1ms | Element not present (ok): button:has-text('등록'), button:has-text('추가'), button:h | +| 9 | [CREATE] 거래처 선택 | CREATE | ✅ | 313ms | Clicked (existed): select[name*='vendor'], input[placeholder*='거래처'] | +| 10 | [CREATE] 채권금액 입력 | CREATE | ✅ | 1ms | Element not present (ok): input[name*='amount'], input[placeholder*='금액'] | +| 11 | [CREATE] 필수 검증 #2: 채권 저장 | CREATE | ✅ | 1ms | Element not present (ok): button:has-text('저장'), button:has-text('등록'), button:h | +| 12 | [CREATE] 저장 완료 토스트 확인 | CREATE | ✅ | 503ms | Toast visible: "" | +| 13 | [READ] 등록된 채권 검색 | READ | ✅ | 312ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 14 | [READ] 등록된 채권 확인 | READ | ⚠️ | 1524ms | Detail checks: 0/1 matched | +| 15 | [READ] 채권 상세 조회 | READ | ✅ | 0ms | Element not present (ok): table tbody tr:has-text('E2E_TEST_채권거래처') | +| 16 | 상세 정보 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 17 | [UPDATE] 상태 변경 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('상태변경'), select[name*='status'] | +| 18 | [UPDATE] 추심 메모 추가 | UPDATE | ✅ | 0ms | Element not present (ok): textarea[name*='memo'], textarea[placeholder*='메모'] | +| 19 | [UPDATE] 변경 저장 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('저장'), button:has-text('확인') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 503ms | Toast visible: "" | +| 21 | [DELETE] 채권 삭제 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 22 | [DELETE] 삭제 확인 | DELETE | ✅ | 0ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1507ms | Detail checks: 0/1 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bad-debt-collection | diff --git a/success/OK-accounting-bank-transaction_2026-03-08_14-38-01.md b/success/OK-accounting-bank-transaction_2026-03-08_14-38-01.md new file mode 100644 index 0000000..20b8707 --- /dev/null +++ b/success/OK-accounting-bank-transaction_2026-03-08_14-38-01.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-08_14-38-01 | **결과**: PASS +**소요 시간**: 10.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 16 | 0 | 2 | 89% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 계좌입출금내역 | - | ✅ | 507ms | Menu navigation: 회계관리 > 계좌입출금내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bank-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 21 "... is not valid JSON/raw:Stats: 21 | +| 5 | 거래내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 6 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 계좌 선택 드롭다운 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 0ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 1ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1519ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 316ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1509ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 305ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 입금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 출금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bank-transactions | diff --git a/success/OK-accounting-bill_2026-03-08_14-38-25.md b/success/OK-accounting-bill_2026-03-08_14-38-25.md new file mode 100644 index 0000000..18c702f --- /dev/null +++ b/success/OK-accounting-bill_2026-03-08_14-38-25.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 어음관리 테스트 + +**테스트 ID**: accounting-bill | **실행**: 2026-03-08_14-38-25 | **결과**: PASS +**소요 시간**: 23.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 18 | 0 | 6 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 어음관리 | - | ✅ | 2505ms | Menu navigation: 회계관리 > 어음관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bills | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 83 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 42 "... is not valid JSON/raw:Stats: 42 | +| 5 | 어음 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 3" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 306ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 304ms | Clicked (existed): 등록 | +| 9 | [CREATE] 어음 정보 입력 | CREATE | ✅ | 537ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 308ms | Clicked (existed): 저장 | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3031ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1514ms | Detail checks: 0/0 matched | +| 14 | [READ] 어음 상세 페이지 진입 | READ | ✅ | 305ms | Clicked (existed): table tbody tr:first-child | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1517ms | Detail checks: 0/4 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 0ms | Element not present (ok): 수정 | +| 17 | [UPDATE] 메모 수정 | UPDATE | ✅ | 0ms | Element not present (ok): textarea[name*='memo'] | +| 18 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 306ms | Clicked (existed): 저장 | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 3053ms | No toast/notification found | +| 20 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1503ms | Detail checks: 0/1 matched | +| 21 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 315ms | Clicked (existed): 삭제 | +| 22 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 316ms | Clicked (existed): 확인 | +| 23 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1511ms | Detail checks: 0/0 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 84ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/success/OK-accounting-card-history_2026-03-08_14-38-35.md b/success/OK-accounting-card-history_2026-03-08_14-38-35.md new file mode 100644 index 0000000..af4d72d --- /dev/null +++ b/success/OK-accounting-card-history_2026-03-08_14-38-35.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-08_14-38-35 | **결과**: PASS +**소요 시간**: 10.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 16 | 0 | 2 | 89% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 515ms | Menu navigation: 회계관리 > 카드사용내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/card-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 61 inputs, 130 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 36 "... is not valid JSON/raw:Stats: 36 | +| 5 | 카드내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 17 cols, 15 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 32" is not valid JSON/raw:Filter | +| 7 | 카드 선택 드롭다운 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 2ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1533ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 308ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1521ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 312ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 사용금액 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 카드별 사용 현황 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/success/OK-accounting-client_2026-03-08_14-38-53.md b/success/OK-accounting-client_2026-03-08_14-38-53.md new file mode 100644 index 0000000..16906f1 --- /dev/null +++ b/success/OK-accounting-client_2026-03-08_14-38-53.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 회계거래처관리 테스트 + +**테스트 ID**: accounting-client | **실행**: 2026-03-08_14-38-53 | **결과**: PASS +**소요 시간**: 17.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 20 | 0 | 3 | 87% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 거래처관리 | - | ✅ | 2506ms | Menu navigation: 회계관리 > 거래처관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/vendors | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 85 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 5 | 거래처 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | [CREATE] 거래처 등록 버튼 클릭 | CREATE | ✅ | 305ms | Clicked (existed): button:has-text('거래처 등록'), button:has-text('등록'), button:has- | +| 8 | [CREATE] 거래처 정보 입력 | CREATE | ✅ | 779ms | fill_form: 5/5 filled | +| 9 | [CREATE] 거래처 구분 선택 | CREATE | ✅ | 313ms | Clicked (existed): #clientType-매출, label:has-text('매출') input[type='radio'], but | +| 10 | [CREATE] 필수 검증 #2: 거래처 저장 | CREATE | ✅ | 303ms | Clicked (existed): button:has-text('저장'), button:has-text('등록'), button:has-text | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3018ms | No toast/notification found | +| 12 | [READ] 등록된 거래처 검색 | READ | ✅ | 307ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 13 | [READ] 등록된 거래처 목록 확인 | READ | ⚠️ | 1503ms | Detail checks: 0/1 matched | +| 14 | [READ] 거래처 상세 조회 | READ | ✅ | 308ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | 상세 페이지 정보 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 303ms | Clicked (existed): button:has-text('수정'), button:has-text('편집') | +| 17 | [UPDATE] 거래처 정보 수정 | UPDATE | ✅ | 1ms | Element not present (ok): input[name*='name'], input[placeholder*='거래처명'] | +| 18 | [UPDATE] 거래처 저장 | UPDATE | ✅ | 312ms | Clicked (existed): button:has-text('저장'), button:has-text('확인') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 506ms | Toast visible: "" | +| 20 | [DELETE] 거래처 삭제 | DELETE | ✅ | 2ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 21 | [DELETE] 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 22 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1510ms | Detail checks: 0/1 matched | +| 23 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 18 | 18 | 0 | 42ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/success/OK-accounting-daily-report_2026-03-08_14-39-04.md b/success/OK-accounting-daily-report_2026-03-08_14-39-04.md new file mode 100644 index 0000000..9ff03bf --- /dev/null +++ b/success/OK-accounting-daily-report_2026-03-08_14-39-04.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 일일 일보 테스트 + +**테스트 ID**: accounting-daily-report | **실행**: 2026-03-08_14-39-04 | **결과**: PASS +**소요 시간**: 11.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일일 일보 | - | ✅ | 2523ms | Menu navigation: 회계관리 > 일일 일보 | +| 2 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 30 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 12 rows | +| 5 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 23 cards" is not valid JSON/raw:Stats: 2 | +| 6 | 일보 테이블 구조 확인 | - | ✅ | 0ms | Table: 4 cols, 1 rows | +| 7 | [FILTER] 날짜 필터 | FILTER | ✅ | 0ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 조회 버튼 | FILTER | ✅ | 1ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | 인쇄/다운로드 버튼 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'E', "Export but"... is not valid JSON/raw:Export but | +| 10 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/daily-report | diff --git a/success/OK-accounting-deposit_2026-03-08_14-39-26.md b/success/OK-accounting-deposit_2026-03-08_14-39-26.md new file mode 100644 index 0000000..b417060 --- /dev/null +++ b/success/OK-accounting-deposit_2026-03-08_14-39-26.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: accounting-deposit | **실행**: 2026-03-08_14-39-26 | **결과**: PASS +**소요 시간**: 22.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2506ms | Menu navigation: 회계관리 > 입금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/deposits | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 입금 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 302ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 305ms | Clicked (existed): button:has-text('등록'), button:has-text('입금 등록'), button:has-t | +| 9 | [CREATE] 입금 정보 입력 | CREATE | ✅ | 477ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 316ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3032ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1509ms | Detail checks: 0/0 matched | +| 14 | [READ] 입금 상세 페이지 진입 | READ | ✅ | 1ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1512ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 307ms | Clicked (existed): input[name*='amount'], input[placeholder*='금액'] | +| 18 | [UPDATE] 메모 수정 | UPDATE | ✅ | 1ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 19 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('저장') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 3033ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1519ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 0ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1513ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/success/OK-accounting-expense-forecast_2026-03-08_14-39-36.md b/success/OK-accounting-expense-forecast_2026-03-08_14-39-36.md new file mode 100644 index 0000000..79ae77b --- /dev/null +++ b/success/OK-accounting-expense-forecast_2026-03-08_14-39-36.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 지출예상내역서 테스트 + +**테스트 ID**: accounting-expense-forecast | **실행**: 2026-03-08_14-39-36 | **결과**: PASS +**소요 시간**: 9.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 14 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 지출예상내역서 | - | ✅ | 503ms | Menu navigation: 회계관리 > 지출예상내역서 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/accounting/expected-expenses | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 79 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 51 "... is not valid JSON/raw:Stats: 51 | +| 5 | 지출예상 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 30 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | 기간 선택 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 월 선택 | FILTER | ✅ | 1ms | Element not present (ok): input[type='month'], select[name*='month'], [class*='m | +| 9 | [FILTER] 조회 적용 | FILTER | ✅ | 1ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1513ms | Detail checks: 0/1 matched | +| 11 | 지출 카테고리별 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 12 | 합계 금액 확인 | - | ⚠️ | 1524ms | Detail checks: 0/1 matched | +| 13 | 일별 지출 예상 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 주요 지출 항목 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 이전/다음 기간 네비게이션 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/expected-expenses | diff --git a/success/OK-accounting-gift-card_2026-03-08_14-39-49.md b/success/OK-accounting-gift-card_2026-03-08_14-39-49.md new file mode 100644 index 0000000..3b872d0 --- /dev/null +++ b/success/OK-accounting-gift-card_2026-03-08_14-39-49.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-08_14-39-49 | **결과**: PASS +**소요 시간**: 13.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 516ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 38 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 1ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 204ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1510ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 306ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1511ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 44ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/success/OK-accounting-journal-entry_2026-03-08_14-40-04.md b/success/OK-accounting-journal-entry_2026-03-08_14-40-04.md new file mode 100644 index 0000000..2878465 --- /dev/null +++ b/success/OK-accounting-journal-entry_2026-03-08_14-40-04.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 일반전표입력 테스트 + +**테스트 ID**: accounting-journal-entry | **실행**: 2026-03-08_14-40-04 | **결과**: PASS +**소요 시간**: 15.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일반전표입력 | - | ✅ | 2513ms | Menu navigation: 회계관리 > 일반전표입력 | +| 2 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 42 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 8 rows | +| 5 | 전표 테이블 구조 확인 | - | ✅ | 1ms | Table: 10 cols, 8 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 202ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1515ms | Detail checks: 0/1 matched | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | 등록 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 10 | 상세 행 클릭 | - | ✅ | 301ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1516ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 108ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/general-journal-entry | diff --git a/success/OK-accounting-payment_2026-03-08_14-40-19.md b/success/OK-accounting-payment_2026-03-08_14-40-19.md new file mode 100644 index 0000000..65dbe25 --- /dev/null +++ b/success/OK-accounting-payment_2026-03-08_14-40-19.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 결제내역 테스트 + +**테스트 ID**: accounting-payment | **실행**: 2026-03-08_14-40-19 | **결과**: PASS +**소요 시간**: 15.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 결제내역 | - | ✅ | 2522ms | Menu navigation: 회계관리 > 결제내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/payment-history | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 0 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 28 "... is not valid JSON/raw:Stats: 28 | +| 5 | 결제내역 페이지 구조 확인 | - | ⚠️ | 1517ms | Checks: 0/4 verified | +| 6 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:first-of-type, input[name*='start'] | +| 7 | [FILTER] 기간 필터 - 종료일 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:last-of-type, input[name*='end'] | +| 8 | [FILTER] 조회 버튼 클릭 | FILTER | ✅ | 1ms | Element not present (ok): button:has-text('조회'), button:has-text('검색') | +| 9 | [READ] 결제 테이블 구조 확인 | READ | ✅ | 0ms | Table: 6 cols, 13 rows | +| 10 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 11 | [READ] 결제 데이터 표시 확인 | READ | ⚠️ | 1518ms | Detail checks: 0/2 matched | +| 12 | [FILTER] 결제방법 필터 테스트 | FILTER | ✅ | 2ms | Element not present (ok): select[name*='method'], button:has-text('결제방법'), [clas | +| 13 | [FILTER] 상태 필터 테스트 | FILTER | ⚠️ | 1529ms | Checks: 0/1 verified | +| 14 | [READ] 결제 상세 조회 | READ | ✅ | 305ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 15 | 결제 상세 정보 확인 | - | ⚠️ | 1519ms | Detail checks: 0/4 matched | +| 16 | 목록으로 돌아가기 | - | ✅ | 307ms | Clicked (existed): button:has-text('목록'), button:has-text('뒤로'), [class*='back'] | +| 17 | 합계 금액 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/payment-history | diff --git a/success/OK-accounting-purchase_2026-03-08_14-40-32.md b/success/OK-accounting-purchase_2026-03-08_14-40-32.md new file mode 100644 index 0000000..bcbe27b --- /dev/null +++ b/success/OK-accounting-purchase_2026-03-08_14-40-32.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 매입관리 테스트 + +**테스트 ID**: accounting-purchase | **실행**: 2026-03-08_14-40-32 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 14 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매입관리 | - | ✅ | 2507ms | Menu navigation: 회계관리 > 매입관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 44 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 8 cards found" is not valid JSON/raw:Sta | +| 4 | 매입 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 5 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 6 | 매입 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 7 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 0ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 0ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1514ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 311ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매입 상세 보기 | READ | ✅ | 302ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1508ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 309ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매입 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 55ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/success/OK-accounting-receivable_2026-03-08_14-40-45.md b/success/OK-accounting-receivable_2026-03-08_14-40-45.md new file mode 100644 index 0000000..75e6b4b --- /dev/null +++ b/success/OK-accounting-receivable_2026-03-08_14-40-45.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 미수금현황 테스트 + +**테스트 ID**: accounting-receivable | **실행**: 2026-03-08_14-40-45 | **결과**: PASS +**소요 시간**: 13.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 미수금현황 | - | ✅ | 520ms | Menu navigation: 회계관리 > 미수금현황 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/receivables-status | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 157 inputs, 260 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 4ms | json_fail:Unexpected token 'S', "Stats: 473"... is not valid JSON/raw:Stats: 473 | +| 5 | 미수금 테이블 구조 확인 | - | ✅ | 2ms | Table: 15 cols, 390 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 1ms | Checks: 2/3 verified | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 807ms | json_fail:Unexpected token 'F', "Filter inp"... is not valid JSON/raw:Filter inp | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1516ms | Detail checks: 0/0 matched | +| 10 | [SEARCH] 거래처 검색 | SEARCH | ✅ | 312ms | Clicked (existed): input[placeholder*='검색'] | +| 11 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1511ms | Detail checks: 0/0 matched | +| 12 | [READ] 미수금 상세 클릭 | READ | ✅ | 314ms | Clicked (existed): table tbody tr:first-child | +| 13 | [READ] 상세 정보 확인 | READ | ⚠️ | 1518ms | Detail checks: 0/3 matched | +| 14 | [READ] 목록으로 복귀 | READ | ✅ | 8ms | Element not present (ok): 목록 | +| 15 | [EXPORT] 엑셀 다운로드 버튼 확인 | EXPORT | ✅ | 0ms | Checks: 1/1 verified | +| 16 | [EXPORT] 필수 검증 #1: 엑셀 다운로드 | EXPORT | ✅ | 319ms | Clicked (existed): 엑셀 | +| 17 | [SORT] 컬럼 정렬 테스트 | SORT | ✅ | 8ms | Element not present (ok): 미수금액 | +| 18 | 연체 현황 탭 확인 | - | ✅ | 324ms | Clicked (existed): 연체 | +| 19 | 콘솔 에러 확인 | - | ✅ | 7ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/receivables-status | diff --git a/success/OK-accounting-sales_2026-03-08_14-40-57.md b/success/OK-accounting-sales_2026-03-08_14-40-57.md new file mode 100644 index 0000000..ddd593f --- /dev/null +++ b/success/OK-accounting-sales_2026-03-08_14-40-57.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 매출관리 테스트 + +**테스트 ID**: accounting-sales | **실행**: 2026-03-08_14-40-57 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 14 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매출관리 | - | ✅ | 2507ms | Menu navigation: 회계관리 > 매출관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 205 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 127"... is not valid JSON/raw:Stats: 127 | +| 4 | 매출 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 20 rows | +| 5 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 6 | 매출 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 7 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 3ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1510ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 315ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매출 상세 보기 | READ | ✅ | 320ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1517ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 306ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매출 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/success/OK-accounting-tax-issue_2026-03-08_14-41-09.md b/success/OK-accounting-tax-issue_2026-03-08_14-41-09.md new file mode 100644 index 0000000..6675cea --- /dev/null +++ b/success/OK-accounting-tax-issue_2026-03-08_14-41-09.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서발행 테스트 + +**테스트 ID**: accounting-tax-issue | **실행**: 2026-03-08_14-41-09 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서발행 | - | ✅ | 509ms | Menu navigation: 회계관리 > 세금계산서발행 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 33 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 1 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 0ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | 발행 버튼 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'I', "Issue button: 새로 발행" is not valid JSON/raw:Issu | +| 10 | 상세 행 클릭 | - | ✅ | 309ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1508ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoice-issuance | diff --git a/success/OK-accounting-tax-mgmt_2026-03-08_14-41-20.md b/success/OK-accounting-tax-mgmt_2026-03-08_14-41-20.md new file mode 100644 index 0000000..c7c98af --- /dev/null +++ b/success/OK-accounting-tax-mgmt_2026-03-08_14-41-20.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서관리 테스트 + +**테스트 ID**: accounting-tax-mgmt | **실행**: 2026-03-08_14-41-20 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서관리 | - | ✅ | 505ms | Menu navigation: 회계관리 > 세금계산서관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 36 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 14 cols, 1 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 1ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 필터 존재 확인 | FILTER | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters: 1" is not valid JSON/raw:Filters: 1 | +| 9 | 상세 행 클릭 | - | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1507ms | Detail checks: 0/1 matched | +| 11 | 엑셀 다운로드 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'E', "Excel butt"... is not valid JSON/raw:Excel butt | +| 12 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoices | diff --git a/success/OK-accounting-withdrawal_2026-03-08_14-41-42.md b/success/OK-accounting-withdrawal_2026-03-08_14-41-42.md new file mode 100644 index 0000000..c0359e2 --- /dev/null +++ b/success/OK-accounting-withdrawal_2026-03-08_14-41-42.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 출금관리 테스트 + +**테스트 ID**: accounting-withdrawal | **실행**: 2026-03-08_14-41-42 | **결과**: PASS +**소요 시간**: 22.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 출금관리 | - | ✅ | 2505ms | Menu navigation: 회계관리 > 출금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/withdrawals | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 출금 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 306ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 출금 등록 버튼 클릭 | CREATE | ✅ | 304ms | Clicked (existed): button:has-text('등록'), button:has-text('출금 등록'), button:has-t | +| 9 | [CREATE] 출금 정보 입력 | CREATE | ✅ | 466ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 307ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3043ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1511ms | Detail checks: 0/0 matched | +| 14 | [READ] 출금 상세 페이지 진입 | READ | ✅ | 1ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1519ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 303ms | Clicked (existed): input[name*='amount'], input[placeholder*='금액'] | +| 18 | [UPDATE] 메모 수정 | UPDATE | ✅ | 0ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 19 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('저장') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 3026ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1527ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 0ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 0ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1519ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 78ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/withdrawals | diff --git a/success/OK-api-health-acc_2026-03-08_14-42-28.md b/success/OK-api-health-acc_2026-03-08_14-42-28.md new file mode 100644 index 0000000..b9e6b83 --- /dev/null +++ b/success/OK-api-health-acc_2026-03-08_14-42-28.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 회계 + +**테스트 ID**: api-health-acc | **실행**: 2026-03-08_14-42-28 | **결과**: PASS +**소요 시간**: 46.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:93 | +| 2 | [회계관리 > 거래처관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 3 | [회계관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [회계관리 > 어음관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:93 | +| 5 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 512ms | Menu navigation: 회계관리 > 어음관리 | +| 6 | [회계관리 > 어음관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 7 | [회계관리 > 어음관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [회계관리 > 입금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:93 | +| 9 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 2016ms | Menu navigation: 회계관리 > 입금관리 | +| 10 | [회계관리 > 입금관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 11 | [회계관리 > 입금관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [회계관리 > 출금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:93 | +| 13 | [회계관리 > 출금관리] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 회계관리 > 출금관리 | +| 14 | [회계관리 > 출금관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 15 | [회계관리 > 출금관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 63ms / PASS | +| 16 | [회계관리 > 매출관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:2 perf:99 | +| 17 | [회계관리 > 매출관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 회계관리 > 매출관리 | +| 18 | [회계관리 > 매출관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 19 | [회계관리 > 매출관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [회계관리 > 매입관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:99 | +| 21 | [회계관리 > 매입관리] 메뉴 이동 | - | ✅ | 2527ms | Menu navigation: 회계관리 > 매입관리 | +| 22 | [회계관리 > 매입관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 23 | [회계관리 > 매입관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 68ms / PASS | +| 24 | [회계관리 > 악성채권관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:106 | +| 25 | [회계관리 > 악성채권관리] 메뉴 이동 | - | ✅ | 510ms | Menu navigation: 회계관리 > 악성채권관리 | +| 26 | [회계관리 > 악성채권관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 27 | [회계관리 > 악성채권관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [회계관리 > 예상지출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:106 | +| 29 | [회계관리 > 예상지출관리] 메뉴 이동 | - | ✅ | 507ms | Menu navigation: 회계관리 > 예상지출관리 | +| 30 | [회계관리 > 예상지출관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 31 | [회계관리 > 예상지출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [회계관리 > 카드내역관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:106 | +| 33 | [회계관리 > 카드내역관리] 메뉴 이동 | - | ✅ | 508ms | Menu navigation: 회계관리 > 카드내역관리 | +| 34 | [회계관리 > 카드내역관리] API 호출 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 35 | [회계관리 > 카드내역관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 36 | [회계관리 > 결제관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:106 | +| 37 | [회계관리 > 결제관리] 메뉴 이동 | - | ✅ | 512ms | Menu navigation: 회계관리 > 결제관리 | +| 38 | [회계관리 > 결제관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 39 | [회계관리 > 결제관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 67ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/success/OK-api-health-prod-misc_2026-03-08_14-43-15.md b/success/OK-api-health-prod-misc_2026-03-08_14-43-15.md new file mode 100644 index 0000000..8798ebf --- /dev/null +++ b/success/OK-api-health-prod-misc_2026-03-08_14-43-15.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 생산/기타 + +**테스트 ID**: api-health-prod-misc | **실행**: 2026-03-08_14-43-15 | **결과**: PASS +**소요 시간**: 46.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [생산관리 > 작업지시 관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:98 | +| 2 | [생산관리 > 작업지시 관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 3 | [생산관리 > 작업지시 관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [생산관리 > 작업실적] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:98 | +| 5 | [생산관리 > 작업실적] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 생산관리 > 작업실적 | +| 6 | [생산관리 > 작업실적] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 7 | [생산관리 > 작업실적] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [생산관리 > 품목관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:98 | +| 9 | [생산관리 > 품목관리] 메뉴 이동 | - | ✅ | 4020ms | Menu navigation: 생산관리 > 품목관리 | +| 10 | [생산관리 > 품목관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 11 | [생산관리 > 품목관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [생산관리 > 작업자 화면] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:98 | +| 13 | [생산관리 > 작업자 화면] 메뉴 이동 | - | ✅ | 2514ms | Menu navigation: 생산관리 > 작업자 화면 | +| 14 | [생산관리 > 작업자 화면] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 15 | [생산관리 > 작업자 화면] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 71ms / PASS | +| 16 | [품질관리 > 제품검사관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:110 | +| 17 | [품질관리 > 제품검사관리] 메뉴 이동 | - | ✅ | 504ms | Menu navigation: 품질관리 > 제품검사관리 | +| 18 | [품질관리 > 제품검사관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 19 | [품질관리 > 제품검사관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [자재관리 > 입고관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:110 | +| 21 | [자재관리 > 입고관리] 메뉴 이동 | - | ✅ | 513ms | Menu navigation: 자재관리 > 입고관리 | +| 22 | [자재관리 > 입고관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 23 | [자재관리 > 입고관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 96ms / PASS | +| 24 | [자재관리 > 재고현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:112 | +| 25 | [자재관리 > 재고현황] 메뉴 이동 | - | ✅ | 2530ms | Menu navigation: 자재관리 > 재고현황 | +| 26 | [자재관리 > 재고현황] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 27 | [자재관리 > 재고현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 59ms / PASS | +| 28 | [게시판 > 자유게시판] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:119 | +| 29 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 게시판 > 자유게시판 | +| 30 | [게시판 > 자유게시판] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 31 | [게시판 > 자유게시판] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [게시판 > 공지사항] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:119 | +| 33 | [게시판 > 공지사항] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 게시판 > 공지사항 | +| 34 | [게시판 > 공지사항] API 호출 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 35 | [게시판 > 공지사항] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 47ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/success/OK-api-health-sales-hr_2026-03-08_14-44-02.md b/success/OK-api-health-sales-hr_2026-03-08_14-44-02.md new file mode 100644 index 0000000..885d0b0 --- /dev/null +++ b/success/OK-api-health-sales-hr_2026-03-08_14-44-02.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 판매/인사 + +**테스트 ID**: api-health-sales-hr | **실행**: 2026-03-08_14-44-02 | **결과**: PASS +**소요 시간**: 46.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:94 | +| 2 | [판매관리 > 거래처관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | [판매관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [판매관리 > 수주관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:94 | +| 5 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 506ms | Menu navigation: 판매관리 > 수주관리 | +| 6 | [판매관리 > 수주관리] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 7 | [판매관리 > 수주관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [판매관리 > 견적관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:94 | +| 9 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 2014ms | Menu navigation: 판매관리 > 견적관리 | +| 10 | [판매관리 > 견적관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 11 | [판매관리 > 견적관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [판매관리 > 단가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:94 | +| 13 | [판매관리 > 단가관리] 메뉴 이동 | - | ✅ | 2512ms | Menu navigation: 판매관리 > 단가관리 | +| 14 | [판매관리 > 단가관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 15 | [판매관리 > 단가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 85ms / PASS | +| 16 | [인사관리 > 사원관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:101 | +| 17 | [인사관리 > 사원관리] 메뉴 이동 | - | ✅ | 513ms | Menu navigation: 인사관리 > 사원관리 | +| 18 | [인사관리 > 사원관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 19 | [인사관리 > 사원관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [인사관리 > 급여관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:101 | +| 21 | [인사관리 > 급여관리] 메뉴 이동 | - | ✅ | 2512ms | Menu navigation: 인사관리 > 급여관리 | +| 22 | [인사관리 > 급여관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 23 | [인사관리 > 급여관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 82ms / PASS | +| 24 | [인사관리 > 근태현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:109 | +| 25 | [인사관리 > 근태현황] 메뉴 이동 | - | ✅ | 510ms | Menu navigation: 인사관리 > 근태현황 | +| 26 | [인사관리 > 근태현황] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 27 | [인사관리 > 근태현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [인사관리 > 휴가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:109 | +| 29 | [인사관리 > 휴가관리] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 인사관리 > 휴가관리 | +| 30 | [인사관리 > 휴가관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 31 | [인사관리 > 휴가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 56ms / PASS | +| 32 | [인사관리 > 카드관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:10 perf:116 | +| 33 | [인사관리 > 카드관리] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 인사관리 > 카드관리 | +| 34 | [인사관리 > 카드관리] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 35 | [인사관리 > 카드관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 90ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 76ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/success/OK-approval-box_2026-03-08_14-44-28.md b/success/OK-approval-box_2026-03-08_14-44-28.md new file mode 100644 index 0000000..cf1d584 --- /dev/null +++ b/success/OK-approval-box_2026-03-08_14-44-28.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-08_14-44-28 | **결과**: PASS +**소요 시간**: 26.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2319ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2510ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/inbox | +| 4 | 404 에러 감지 | - | ✅ | 1009ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 6 | 통계 카드 확인 | - | ✅ | 0ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1529ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 1ms | Table: 9 cols, 1 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 0ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1509ms | json_fail:Unexpected token 'P', "PASS: Deta"... is not valid JSON/raw:PASS: Deta | +| 12 | PDF 다운로드 전 모달 상태 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'W', "WARN: No m"... is not valid JSON/raw:WARN: No m | +| 13 | 필수 검증: PDF 다운로드 실행 | - | ⚠️ | 1513ms | evaluate error: Failed to execute 'querySelector' on 'Document': 'button:has-tex | +| 14 | PDF 파일 유효성 + content-type 검증 | VERIFY | ✅ | 1ms | WARN: PDF API call not in logs - skip validation | +| 15 | PDF 스타일 수동 확인 체크리스트 | - | ✅ | 0ms | json_fail:Unexpected token 'M', "Manual che"... is not valid JSON/raw:Manual che | +| 16 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 0ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1502ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1504ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 1건 존재 / rows:1 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1516ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2021ms | json_fail:Unexpected token 'P', "PASS: Docu"... is not valid JSON/raw:PASS: Docu | +| 21 | [REJECT] 반려 버튼 클릭 + 사유 입력 | REJECT | ✅ | 1318ms | REJECT_WITH_REASON / WARN: reason textarea not found | +| 22 | [REJECT] 결재반려 탭 이동 + 반려 문서 확인 | VERIFY | ✅ | 1515ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 1건 존재 / rows:1 | +| 23 | 검색 기능 테스트 | - | ✅ | 520ms | json_fail:Unexpected token 'S', "Search tes"... is not valid JSON/raw:Search tes | +| 24 | [VERIFY] 콘솔 에러 확인 | VERIFY | ✅ | 0ms | CONSOLE_CHECK / pass: 0 JS console errors | +| 25 | [VERIFY] API 호출 요약 | VERIFY | ✅ | 0ms | API_SUMMARY / API total=5 success=5 failed=0 avg=67ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 67ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/success/OK-attendance-checkin_2026-03-08_14-44-41.md b/success/OK-attendance-checkin_2026-03-08_14-44-41.md new file mode 100644 index 0000000..f439d7c --- /dev/null +++ b/success/OK-attendance-checkin_2026-03-08_14-44-41.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-08_14-44-41 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | GPS 위치 정보 모킹 | - | ✅ | 0ms | json_fail:Unexpected token 'G', "GPS mockin"... is not valid JSON/raw:GPS mockin | +| 2 | 메뉴 진입: 인사관리 > 근태현황 | - | ✅ | 506ms | Menu navigation: 인사관리 > 근태현황 | +| 3 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 4 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 5 | 404 에러 감지 | - | ✅ | 0ms | No text to verify | +| 6 | 페이지 콘텐츠 확인 | - | ✅ | 0ms | Element exists: body | +| 7 | 출퇴근 버튼 확인 | - | ✅ | 1ms | evaluate ok | +| 8 | 출근하기 버튼 클릭 (있는 경우) | - | ✅ | 302ms | Clicked (existed): button:has-text('출근') | +| 9 | 출근 결과 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 10 | 출퇴근 상태 확인 | - | ✅ | 1ms | evaluate ok | +| 11 | 퇴근하기 버튼 확인 | - | ✅ | 0ms | Element not present (ok): button:has-text('퇴근') | +| 12 | 최종 상태 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance | + +### 콘솔 에러 (Health Check) +1. `Loading the stylesheet 'https://fonts.googleapis.com/css?family=Google+Sans+Text:400&text=%E2%86%90%E2%86%92%E2%86%91%E2%86%93&lang=ko' violates the following Content Security Policy directive: "style` +2. `Loading the stylesheet 'https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Google+Sans:400,500,700|Google+Sans+Text:400,500,700&lang=ko' violates the following Content Security Policy dire` diff --git a/success/OK-attendance-management_2026-03-08_14-45-00.md b/success/OK-attendance-management_2026-03-08_14-45-00.md new file mode 100644 index 0000000..08b185a --- /dev/null +++ b/success/OK-attendance-management_2026-03-08_14-45-00.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 근태관리 테스트 + +**테스트 ID**: attendance-management | **실행**: 2026-03-08_14-45-00 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 25 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 근태관리 | - | ✅ | 2507ms | Menu navigation: 인사관리 > 근태관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance-management | +| 4 | GPS 위치 정보 모킹 | - | ✅ | 1ms | json_fail:Unexpected token 'G', "GPS mocking complete" is not valid JSON/raw:GPS | +| 5 | 근태 현황 카드 확인 | - | ✅ | 1ms | Element exists: body | +| 6 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 7 | 근태 등록 버튼 클릭 | - | ✅ | 308ms | Clicked button: 근태 등록 | +| 8 | 모달 열림 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 9 | 대상 사원 선택 | - | ✅ | 536ms | json_fail:Unexpected token 'S', "Selected: "... is not valid JSON/raw:Selected: | +| 10 | 기준일 기본값 확인 | - | ✅ | 1ms | Element exists: [role='dialog'] | +| 11 | 근태 등록 저장 | - | ✅ | 305ms | Clicked button: 저장 | +| 12 | 근태 등록 모달 닫기 확인 | - | ✅ | 1ms | No modal open | +| 13 | 근태 등록 결과 확인 | - | ✅ | 0ms | Element exists: table tbody tr | +| 14 | 사유 등록 버튼 클릭 | - | ✅ | 309ms | Clicked button: 사유 등록 | +| 15 | 사유 모달 열림 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 16 | 사유 유형 선택 | - | ✅ | 511ms | json_fail:Unexpected token 'S', "Selected: 전체" is not valid JSON/raw:Selected: 전 | +| 17 | 사유 대상 사원 선택 | - | ✅ | 523ms | json_fail:Unexpected token 'S', "Selected: "... is not valid JSON/raw:Selected: | +| 18 | 사유 등록 저장 | - | ✅ | 315ms | Clicked button: 등록 | +| 19 | 사유 등록 모달 닫기 확인 | - | ✅ | 0ms | No modal open | +| 20 | 기간 필터 - 당월 클릭 | - | ✅ | 416ms | Clicked: 당월 | +| 21 | 필터 적용 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 22 | 검색 기능 테스트 | - | ✅ | 207ms | Filled "input[type='search'], input[placeholder*='검색']" with "홍" | +| 23 | 검색 결과 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 24 | 검색 초기화 | - | ✅ | 205ms | Cleared: input[type='search'], input[placeholder*='검색'] | +| 25 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Element exists: 엑셀 다운로드 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 89ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/success/OK-batch-create-acc-bills_2026-03-08_14-46-58.md b/success/OK-batch-create-acc-bills_2026-03-08_14-46-58.md new file mode 100644 index 0000000..97661af --- /dev/null +++ b/success/OK-batch-create-acc-bills_2026-03-08_14-46-58.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 어음관리 + +**테스트 ID**: batch-create-acc-bills | **실행**: 2026-03-08_14-46-58 | **결과**: PASS +**소요 시간**: 117.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 어음관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 16170ms | CREATE_1 | +| 5 | [회계관리 > 어음관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 어음관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2014ms | evaluate ok | +| 7 | [회계관리 > 어음관리] [CREATE #1] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 8 | [회계관리 > 어음관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 16172ms | CREATE_2 | +| 9 | [회계관리 > 어음관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 10 | [회계관리 > 어음관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2013ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [CREATE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 12 | [회계관리 > 어음관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 16174ms | CREATE_3 | +| 13 | [회계관리 > 어음관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2005ms | evaluate ok | +| 15 | [회계관리 > 어음관리] [CREATE #3] 목록 안정화 | - | ✅ | 1508ms | Waited 1500ms | +| 16 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 18 | [회계관리 > 어음관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1004ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 어음관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 5023ms | DELETE_1 / 삭제 버튼 없음 - 스킵 | +| 20 | [회계관리 > 어음관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 21 | [회계관리 > 어음관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 2013ms | evaluate ok | +| 22 | [회계관리 > 어음관리] [DELETE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 101 | [회계관리 > 어음관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 102 | [회계관리 > 어음관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 103 | [회계관리 > 어음관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 어음관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 5035ms | DELETE_2 / 삭제 버튼 없음 - 스킵 | +| 24 | [회계관리 > 어음관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 25 | [회계관리 > 어음관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 2011ms | evaluate ok | +| 26 | [회계관리 > 어음관리] [DELETE #2] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | +| 104 | [회계관리 > 어음관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 105 | [회계관리 > 어음관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1008ms | Waited 1000ms | +| 106 | [회계관리 > 어음관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 27 | [회계관리 > 어음관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 5014ms | DELETE_3 / 삭제 버튼 없음 - 스킵 | +| 28 | [회계관리 > 어음관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 29 | [회계관리 > 어음관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 2008ms | evaluate ok | +| 30 | [회계관리 > 어음관리] [DELETE #3] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 31 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 어음관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1005ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/success/OK-batch-create-board_2026-03-08_14-49-23.md b/success/OK-batch-create-board_2026-03-08_14-49-23.md new file mode 100644 index 0000000..01b9eaf --- /dev/null +++ b/success/OK-batch-create-board_2026-03-08_14-49-23.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 자유게시판 + +**테스트 ID**: batch-create-board | **실행**: 2026-03-08_14-49-23 | **결과**: PASS +**소요 시간**: 94.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7931ms | CREATE_1 | +| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2009ms | evaluate ok | +| 7 | [게시판 > 자유게시판] [CREATE #1] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7948ms | CREATE_2 | +| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 10 | [게시판 > 자유게시판] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7948ms | CREATE_3 | +| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2004ms | evaluate ok | +| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1004ms | VERIFY_BATCH / rows:10 | +| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7524ms | DELETE_1 | +| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1511ms | Waited 1500ms | +| 201 | [게시판 > 자유게시판] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 202 | [게시판 > 자유게시판] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 203 | [게시판 > 자유게시판] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7531ms | DELETE_2 | +| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1509ms | Waited 1500ms | +| 204 | [게시판 > 자유게시판] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 205 | [게시판 > 자유게시판] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 206 | [게시판 > 자유게시판] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7523ms | DELETE_3 | +| 28 | [게시판 > 자유게시판] [DELETE #3] 삭제 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1010ms | VERIFY_BATCH / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/success/OK-batch-update-account-sales_2026-03-08_14-49-50.md b/success/OK-batch-update-account-sales_2026-03-08_14-49-50.md new file mode 100644 index 0000000..10a03f0 --- /dev/null +++ b/success/OK-batch-update-account-sales_2026-03-08_14-49-50.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 + +**테스트 ID**: batch-update-account-sales | **실행**: 2026-03-08_14-49-50 | **결과**: PASS +**소요 시간**: 26.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5004ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 현재 매출유형 캡처 | CAPTURE | ✅ | 505ms | CAPTURE_BEFORE / rows:20 | +| 4 | [회계관리 > 매출관리] [SELECT] 첫 행 체크박스 선택 | SELECT | ✅ | 517ms | SELECT_ROW | +| 5 | [회계관리 > 매출관리] [SELECT] 계정과목 드롭다운에서 다른 값 선택 | SELECT | ✅ | 1017ms | CHANGE_ACCOUNT | +| 6 | [회계관리 > 매출관리] [SAVE] 저장 버튼 클릭 | SAVE | ✅ | 1501ms | SAVE | +| 7 | [회계관리 > 매출관리] [SAVE] 확인 다이얼로그 → 확인 클릭 | SAVE | ✅ | 2003ms | CONFIRM | +| 8 | [회계관리 > 매출관리] [VERIFY-1] 토스트 메시지 확인 | VERIFY | ✅ | 1006ms | VERIFY_TOAST / ⚠️ 성공 토스트 미감지 | +| 9 | [회계관리 > 매출관리] [VERIFY-2] ★핵심★ 첫 행 매출유형 실제 변경 확인 | VERIFY | ✅ | 1013ms | VERIFY_DATA_CHANGED / 🐛 BUG-SALES-20260115-001 재현: 토스트 성공 but 데이터 미변경 (beforeTy | +| 10 | [회계관리 > 매출관리] [RELOAD] 새로고침 | - | ✅ | 0ms | Page reload | +| 11 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5000ms | Waited 5000ms | +| 12 | [회계관리 > 매출관리] [RELOAD] 테이블 재로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 13 | [회계관리 > 매출관리] [VERIFY-3] ★핵심★ 새로고침 후에도 변경값 유지 확인 | VERIFY | ✅ | 1011ms | VERIFY_PERSIST / ⚠️ 새로고침 후 상태 확인 불가 | +| 14 | [회계관리 > 매출관리] [RESTORE] 원래 값 복원 (선택적) | RESTORE | ✅ | 1ms | RESTORE / 원래 값 없음 - 복원 스킵 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/success/OK-board-management_2026-03-08_14-50-01.md b/success/OK-board-management_2026-03-08_14-50-01.md new file mode 100644 index 0000000..b410a52 --- /dev/null +++ b/success/OK-board-management_2026-03-08_14-50-01.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 게시판 관리 테스트 + +**테스트 ID**: board-management | **실행**: 2026-03-08_14-50-01 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 22 | 22 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 관리 | - | ✅ | 509ms | Menu navigation: 게시판 > 게시판 관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/board/board-management | +| 3 | 목업 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 8 cards found" is not valid JSON/raw:Sta | +| 5 | 게시판 관리 페이지 확인 | - | ✅ | 1ms | Detail checks: 1/1 | +| 6 | 테이블 확인 | - | ✅ | 0ms | Table: 7 cols, 3 rows | +| 7 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 8 | 검색 기능 | - | ✅ | 1004ms | Searched: "테스트" | +| 9 | 검색 결과 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 10 | 검색 결과 데이터 검증 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Search res"... is not valid JSON/raw:Search res | +| 11 | 검색 초기화 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Search cleared" is not valid JSON/raw:Search cl | +| 12 | 검색 초기화 결과 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 13 | 검색 초기화 및 복원 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'R', "Restored: 2 rows" is not valid JSON/raw:Restore | +| 14 | 검색 후 확인 | - | ✅ | 0ms | Detail checks: 1/1 | +| 15 | 첫 번째 행 클릭 | - | ✅ | 506ms | Clicked first row | +| 16 | 상세 페이지 로딩 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 17 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'D', "Detail pag"... is not valid JSON/raw:Detail pag | +| 18 | 상세 확인 | - | ✅ | 0ms | Detail checks: 1/1 | +| 19 | 모달 닫기 | - | ✅ | 1ms | No modal open | +| 20 | 페이지네이션 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 21 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | +| 22 | 목록 복귀 | - | ✅ | 308ms | Clicked (existed): button:has-text('목록'), a:has-text('목록') | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 126ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/board/board-management | diff --git a/success/OK-board-test_2026-03-08_14-50-17.md b/success/OK-board-test_2026-03-08_14-50-17.md new file mode 100644 index 0000000..d169513 --- /dev/null +++ b/success/OK-board-test_2026-03-08_14-50-17.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 게시판 테스트 페이지 테스트 + +**테스트 ID**: board-test | **실행**: 2026-03-08_14-50-17 | **결과**: PASS +**소요 시간**: 15.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 11 | 0 | 2 | 85% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 테스트 | - | ✅ | 2506ms | Menu navigation: 게시판 > 게시판 테스트 | +| 2 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 69 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 게시판 테이블 구조 확인 | - | ✅ | 0ms | Table: 7 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 204ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1512ms | Detail checks: 0/1 matched | +| 8 | 글쓰기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "Write button: 글쓰기" is not valid JSON/raw:Write | +| 9 | 게시글 행 클릭 | - | ✅ | 302ms | Clicked (existed): table tbody tr:first-child | +| 10 | 게시글 상세 확인 | - | ⚠️ | 1517ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 302ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 페이지네이션 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No pagination (ok)" is not valid JSON/raw:No pa | +| 13 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 7 | 7 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/board_mjsgri54_1fmg | diff --git a/success/OK-company-info_2026-03-08_14-50-40.md b/success/OK-company-info_2026-03-08_14-50-40.md new file mode 100644 index 0000000..0765f57 --- /dev/null +++ b/success/OK-company-info_2026-03-08_14-50-40.md @@ -0,0 +1,55 @@ +# ✅ E2E 테스트 성공: 설정 - 회사정보 + +**테스트 ID**: company-info | **실행**: 2026-03-08_14-50-40 | **결과**: PASS +**소요 시간**: 23.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 31 | 29 | 0 | 2 | 94% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2310ms | json_fail:Unexpected token 'm', "menu expanded" is not valid JSON/raw:menu expan | +| 2 | 1차 메뉴 찾기: 설정 | - | ✅ | 2507ms | Menu navigation: 설정 > 회사정보 | +| 3 | 페이지 로드 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 4 | 404 에러 감지 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/company-info | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 0ms | Detail checks: 1/4 | +| 6 | 페이지 제목 확인 | - | ⚠️ | 1517ms | Element not found: heading | +| 7 | 회사 추가 버튼 존재 확인 | - | ✅ | 1ms | Element exists: 회사 추가 | +| 8 | 수정 버튼 존재 확인 | - | ✅ | 0ms | Element exists: 수정 | +| 9 | 회사명 필드 확인 | - | ✅ | 0ms | No text to verify | +| 10 | 대표자명 필드 확인 | - | ✅ | 0ms | No text to verify | +| 11 | 업태 필드 확인 | - | ✅ | 0ms | No text to verify | +| 12 | 업종 필드 확인 | - | ✅ | 0ms | No text to verify | +| 13 | 주소 필드 확인 | - | ✅ | 0ms | No text to verify | +| 14 | 이메일 필드 확인 | - | ✅ | 0ms | No text to verify | +| 15 | 사업자등록번호 필드 확인 | - | ✅ | 0ms | No text to verify | +| 16 | 수정 버튼 클릭 | - | ✅ | 302ms | Clicked (existed): 수정 | +| 17 | 수정 모드 - 필드 활성화 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'e', "enabled: 13 fields" is not valid JSON/raw:enabl | +| 18 | 취소 버튼 클릭 | - | ✅ | 303ms | Clicked (existed): 취소 | +| 19 | 회사 추가 버튼 클릭 | - | ✅ | 303ms | Clicked (existed): 회사 추가 | +| 20 | 회사 추가 다이얼로그 확인 | - | ✅ | 1006ms | Waited 1000ms | +| 21 | 다이얼로그 닫기 | - | ✅ | 312ms | Clicked (existed): 취소 | +| 22 | 수정 모드에서 데이터 변경 테스트 | - | ✅ | 306ms | Clicked (existed): 수정 | +| 23 | 업태 필드 수정 | - | ✅ | 212ms | Filled "업태" with "테스트업태_수정" | +| 24 | 저장 버튼 클릭 | - | ✅ | 310ms | Clicked (existed): 저장 | +| 25 | ⚠️ 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1516ms | Detail checks: 0/1 matched | +| 26 | 회사 추가 다이얼로그 열기 | - | ✅ | 304ms | Clicked (existed): 회사 추가 | +| 27 | 새 회사 정보 입력 | - | ✅ | 465ms | fill_form: 3/3 filled | +| 28 | 회사 등록 | - | ✅ | 316ms | Clicked (existed): 등록 | +| 29 | ⚠️ 필수 검증: 회사 등록 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 30 | 원복: 업태 필드 원래 값으로 복구 | - | ✅ | 3534ms | json_fail:Unexpected token 'r', "restored" is not valid JSON/raw:restored | +| 31 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 142ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/company-info | diff --git a/success/OK-cross-module-data-consistency_2026-03-08_14-52-43.md b/success/OK-cross-module-data-consistency_2026-03-08_14-52-43.md new file mode 100644 index 0000000..52c8969 --- /dev/null +++ b/success/OK-cross-module-data-consistency_2026-03-08_14-52-43.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) + +**테스트 ID**: cross-module-data-consistency | **실행**: 2026-03-08_14-52-43 | **결과**: PASS +**소요 시간**: 37.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [판매 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | [판매 > 거래처관리] 거래처명 캡처 | CAPTURE_VENDOR | ✅ | 1522ms | CAPTURE_VENDOR / W:거래처명 추출 실패 / rows:1 | +| 4 | [회계 > 거래처관리] 메뉴 이동 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 거래처관리 | +| 5 | [회계 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 6 | [회계 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 7 | [회계 > 거래처관리] 거래처 존재 확인 | VERIFY_VENDOR_ACC | ✅ | 2005ms | VERIFY_VENDOR_ACC / W:캡처된 거래처명 없음 (이전 단계 실패) | +| 8 | [판매 > 단가관리] 메뉴 이동 | - | ✅ | 503ms | Menu navigation: 판매관리 > 단가관리 | +| 9 | [판매 > 단가관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 10 | [판매 > 단가관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 11 | [판매 > 단가관리] 품목명 캡처 | CAPTURE_ITEM | ✅ | 1509ms | CAPTURE_ITEM / W:품목명 추출 실패 / rows:1 | +| 12 | [생산 > 품목관리] 메뉴 이동 | - | ✅ | 2509ms | Menu navigation: 생산관리 > 품목관리 | +| 13 | [생산 > 품목관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 14 | [생산 > 품목관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 15 | [생산 > 품목관리] 품목 존재 확인 | VERIFY_ITEM_PROD | ✅ | 2002ms | VERIFY_ITEM_PROD / W:캡처된 품목명 없음 (이전 단계 실패) | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 1 | 1 | 232ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | + +### 콘솔 에러 (Health Check) +1. `Dashboard API Error [calendar/schedules?department_filter=all]: Error: API 오류: 500 + at https://dev.codebridge-x.com/_next/static/chunks/86875-1a09231311cb9645.js:1:34520` +2. `Failed to load resource: the server responded with a status of 500 ()` +3. `Dashboard API Error [today-issues/summary?limit=30]: Error: API 오류: 500 + at https://dev.codebridge-x.com/_next/static/chunks/86875-1a09231311cb9645.js:1:34520` +4. `Failed to load resource: the server responded with a status of 500 ()` +5. `Dashboard API Error [welfare/summary?limit_type=quarterly&calculation_type=fixed]: Error: API 오류: 500 + at https://dev.codebridge-x.com/_next/static/chunks/86875-1a09231311cb9645.js:1:34520` diff --git a/success/OK-customer-event_2026-03-08_14-53-00.md b/success/OK-customer-event_2026-03-08_14-53-00.md new file mode 100644 index 0000000..068af71 --- /dev/null +++ b/success/OK-customer-event_2026-03-08_14-53-00.md @@ -0,0 +1,51 @@ +# ✅ E2E 테스트 성공: 이벤트 게시판 테스트 + +**테스트 ID**: customer-event | **실행**: 2026-03-08_14-53-00 | **결과**: PASS +**소요 시간**: 16.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 이벤트 게시판 | - | ✅ | 506ms | Menu navigation: 고객센터 > 이벤트 게시판 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/events | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 40 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 3 cards found" is not valid JSON/raw:Sta | +| 5 | 이벤트 페이지 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 이벤트 목록 데이터 확인 | READ | ⚠️ | 1509ms | Detail checks: 0/1 matched | +| 7 | [FILTER] 상태별 필터 | FILTER | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [READ] 이벤트 상세 보기 | READ | ✅ | 310ms | Clicked (existed): [class*='event']:first-child, table tbody tr:first-child, [cl | +| 9 | 이벤트 상세 정보 확인 | - | ⚠️ | 1515ms | Detail checks: 0/4 matched | +| 10 | 이벤트 참여 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 11 | 공유 기능 확인 | - | ⚠️ | 1515ms | Checks: 0/1 verified | +| 12 | 목록으로 돌아가기 | - | ✅ | 303ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 13 | 페이지네이션 확인 | - | ⚠️ | 1520ms | Checks: 0/1 verified | +| 14 | 테이블 행 클릭 - 상세 페이지 이동 | - | ✅ | 513ms | Clicked first row | +| 15 | 상세 페이지 로딩 대기 | - | ✅ | 1014ms | Waited 1000ms | +| 16 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'D', "Detail pag"... is not valid JSON/raw:Detail pag | +| 17 | 모달/상세 닫기 | - | ✅ | 1ms | No modal open | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | +| 19 | 이벤트 기간 정보 확인 | - | ⚠️ | 1506ms | Detail checks: 0/2 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/events | + +### 콘솔 에러 (Health Check) +1. `[Menu] 메뉴 갱신 실패: TypeError: Failed to fetch + at window.fetch (eval at evaluate (:290:30), :45:40) + at l (https://dev.codebridge-x.com/_next/static/chunks/app/%5Blocale%5D/(protected)/` +2. `[Notification] 알림 조회 실패: TypeError: Failed to fetch + at window.fetch (eval at evaluate (:290:30), :45:40) + at M (https://dev.codebridge-x.com/_next/static/chunks/31255-dfdd947b06ee24c` diff --git a/success/OK-customer-faq_2026-03-08_14-53-12.md b/success/OK-customer-faq_2026-03-08_14-53-12.md new file mode 100644 index 0000000..970c880 --- /dev/null +++ b/success/OK-customer-faq_2026-03-08_14-53-12.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: FAQ 테스트 + +**테스트 ID**: customer-faq | **실행**: 2026-03-08_14-53-12 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > FAQ | - | ✅ | 504ms | Menu navigation: 고객센터 > FAQ | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/faq | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 29 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 7 cards found" is not valid JSON/raw:Sta | +| 5 | FAQ 페이지 구조 확인 | - | ✅ | 0ms | Checks: 2/3 verified | +| 6 | [READ] FAQ 목록 데이터 확인 | READ | ⚠️ | 1519ms | Detail checks: 0/1 matched | +| 7 | [READ] FAQ 항목 펼치기 | READ | ✅ | 0ms | Element not present (ok): [class*='accordion']:first-child, [class*='faq']:first | +| 8 | FAQ 답변 내용 확인 | - | ⚠️ | 1520ms | Detail checks: 0/1 matched | +| 9 | [FILTER] 카테고리 필터 | FILTER | ✅ | 0ms | Element exists: [class*='category'], [class*='tab'] | +| 10 | [FILTER] 카테고리 선택 후 결과 | FILTER | ⚠️ | 1521ms | Detail checks: 0/1 matched | +| 11 | [SEARCH] FAQ 검색 | SEARCH | ✅ | 304ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 12 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1516ms | Detail checks: 0/1 matched | +| 13 | FAQ 접기/펼치기 토글 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | +| 16 | 전체 보기/접기 | - | ✅ | 0ms | Checks: 1/1 verified | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/faq | diff --git a/success/OK-customer-notice_2026-03-08_14-53-29.md b/success/OK-customer-notice_2026-03-08_14-53-29.md new file mode 100644 index 0000000..75ed018 --- /dev/null +++ b/success/OK-customer-notice_2026-03-08_14-53-29.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 공지사항 테스트 + +**테스트 ID**: customer-notice | **실행**: 2026-03-08_14-53-29 | **결과**: PASS +**소요 시간**: 16.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 공지사항 | - | ✅ | 2523ms | Menu navigation: 고객센터 > 공지사항 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/notices | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 4 cards found" is not valid JSON/raw:Sta | +| 5 | 공지사항 목록 구조 확인 | - | ✅ | 0ms | Table: 6 cols, 1 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 1" is not valid JSON/raw:Filters | +| 7 | [READ] 공지사항 목록 데이터 확인 | READ | ⚠️ | 1504ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 공지사항 검색 | SEARCH | ✅ | 202ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1516ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 311ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | [READ] 공지사항 상세 보기 | READ | ✅ | 315ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 12 | 상세 페이지 구조 확인 | - | ✅ | 505ms | [retry 1] Checks: 1/4 verified | +| 13 | 첨부파일 확인 | - | ⚠️ | 1528ms | Checks: 0/1 verified | +| 14 | 이전/다음 글 네비게이션 | - | ⚠️ | 1508ms | Checks: 0/2 verified | +| 15 | 목록으로 돌아가기 | - | ✅ | 303ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 16 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 17 | 정렬 기능 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 중요 공지 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 141ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/notices | diff --git a/success/OK-department-add_2026-03-08_14-53-37.md b/success/OK-department-add_2026-03-08_14-53-37.md new file mode 100644 index 0000000..0bf9129 --- /dev/null +++ b/success/OK-department-add_2026-03-08_14-53-37.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 부서관리 테스트 + +**테스트 ID**: department-add | **실행**: 2026-03-08_14-53-37 | **결과**: PASS +**소요 시간**: 8.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 16 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 부서관리 | - | ✅ | 2509ms | Menu navigation: 인사관리 > 부서관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/department-management | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 45 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 2 cards found" is not valid JSON/raw:Sta | +| 5 | 부서 트리/목록 구조 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'T', "Tables: 0,"... is not valid JSON/raw:Tables: 0, | +| 6 | [READ] 부서 목록 데이터 확인 | READ | ✅ | 0ms | json_fail:Unexpected token 'D', "Dept data "... is not valid JSON/raw:Dept data | +| 7 | [READ] 첫 번째 부서 노드 클릭 | READ | ✅ | 0ms | json_fail:Unexpected token 'N', "No dept it"... is not valid JSON/raw:No dept it | +| 8 | [READ] 부서 상세 정보 확인 | READ | ✅ | 0ms | json_fail:Unexpected token 'D', "Detail vie"... is not valid JSON/raw:Detail vie | +| 9 | 부서 추가 버튼 확인 | - | ✅ | 308ms | Clicked (existed): 추가 | +| 10 | 추가 폼/모달 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'M', "Modal open"... is not valid JSON/raw:Modal open | +| 11 | 추가 모달 닫기 | - | ✅ | 0ms | No modal open | +| 12 | 부서 트리 구조 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'T', "Tree eleme"... is not valid JSON/raw:Tree eleme | +| 13 | 삭제 버튼 존재 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'D', "Delete buttons: 0" is not valid JSON/raw:Delete | +| 14 | 페이지네이션 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | +| 16 | 부서관리 페이지 최종 확인 | - | ✅ | 1ms | Detail checks: 1/1 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | diff --git a/success/OK-deposit-management_2026-03-08_14-53-54.md b/success/OK-deposit-management_2026-03-08_14-53-54.md new file mode 100644 index 0000000..8d7169b --- /dev/null +++ b/success/OK-deposit-management_2026-03-08_14-53-54.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: deposit-management | **실행**: 2026-03-08_14-53-54 | **결과**: PASS +**소요 시간**: 16.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 21 | 20 | 0 | 1 | 95% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2315ms | json_fail:Unexpected token 's', "sidebar expanded" is not valid JSON/raw:sidebar | +| 2 | 2단계 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2515ms | Menu navigation: 회계관리 > 입금관리 | +| 3 | 목록 페이지 구조 확인 | - | ✅ | 1ms | Element exists: body | +| 4 | 계정과목명 드롭다운 옵션 확인 | - | ✅ | 309ms | Clicked (existed): 계정과목명 | +| 5 | 체크박스 선택 후 계정과목명 일괄변경 | - | ✅ | 1002ms | json_fail:Unexpected token 'b', "batch upda"... is not valid JSON/raw:batch upda | +| 6 | 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 7 | 입금 상세 페이지 이동 | - | ✅ | 501ms | Clicked first row | +| 8 | 상세 페이지 읽기 모드 필드 확인 | - | ✅ | 1ms | Element exists: body | +| 9 | 수정 모드 전환 | - | ✅ | 304ms | Clicked (existed): 수정 | +| 10 | 수정 모드 필드 활성화 검증 | - | ✅ | 1ms | Element exists: body | +| 11 | 거래처 드롭다운 옵션 확인 | - | ✅ | 309ms | Clicked (existed): 거래처 | +| 12 | 입금 유형 드롭다운 옵션 확인 | - | ✅ | 3ms | Element not present (ok): 입금 유형 | +| 13 | 수정 데이터 입력 | - | ✅ | 517ms | json_fail:Unexpected token 'o', "form filled" is not valid JSON/raw:form filled | +| 14 | 저장 및 결과 확인 | - | ✅ | 304ms | Clicked (existed): 저장 | +| 15 | 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1529ms | Detail checks: 0/3 matched | +| 16 | 취소 버튼 동작 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'c', "cancel tested" is not valid JSON/raw:cancel tes | +| 17 | 목록 버튼 동작 확인 | - | ✅ | 1ms | Element not present (ok): 목록 | +| 18 | 필터 드롭다운 검증 | - | ✅ | 1ms | Element exists: body | +| 19 | 날짜 필터 검증 | - | ✅ | 307ms | Clicked (existed): 당해년도 | +| 20 | 페이지네이션 동작 확인 | - | ✅ | 307ms | Clicked (existed): 다음 | +| 21 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 157ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/success/OK-detail-roundtrip-acc_2026-03-08_14-54-26.md b/success/OK-detail-roundtrip-acc_2026-03-08_14-54-26.md new file mode 100644 index 0000000..6d14579 --- /dev/null +++ b/success/OK-detail-roundtrip-acc_2026-03-08_14-54-26.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 회계 + +**테스트 ID**: detail-roundtrip-acc | **실행**: 2026-03-08_14-54-26 | **결과**: PASS +**소요 시간**: 32.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | [회계관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 501ms | CLICK_ROW / urlChg:true | +| 5 | [회계관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [회계관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2002ms | GO_BACK | +| 7 | [회계관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1509ms | LIST_INTACT / intact:true | +| 8 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 508ms | Menu navigation: 회계관리 > 어음관리 | +| 9 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 12 | [회계관리 > 어음관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 509ms | CLICK_ROW / urlChg:true | +| 13 | [회계관리 > 어음관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1506ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [회계관리 > 어음관리] 목록으로 복귀 | GO_BACK | ✅ | 2005ms | GO_BACK | +| 15 | [회계관리 > 어음관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1510ms | LIST_INTACT / intact:true | +| 16 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 506ms | Menu navigation: 회계관리 > 입금관리 | +| 17 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 18 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [회계관리 > 입금관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [회계관리 > 입금관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 503ms | CLICK_ROW / urlChg:true | +| 21 | [회계관리 > 입금관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1501ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [회계관리 > 입금관리] 목록으로 복귀 | GO_BACK | ✅ | 2007ms | GO_BACK | +| 23 | [회계관리 > 입금관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1507ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 14 | 14 | 0 | 155ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/success/OK-detail-roundtrip-hr-board_2026-03-08_14-54-52.md b/success/OK-detail-roundtrip-hr-board_2026-03-08_14-54-52.md new file mode 100644 index 0000000..4e6a08d --- /dev/null +++ b/success/OK-detail-roundtrip-hr-board_2026-03-08_14-54-52.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 인사/게시판 + +**테스트 ID**: detail-roundtrip-hr-board | **실행**: 2026-03-08_14-54-52 | **결과**: PASS +**소요 시간**: 25.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [인사관리 > 사원관리] 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | [인사관리 > 사원관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [인사관리 > 사원관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 4 | [인사관리 > 사원관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 517ms | CLICK_ROW / urlChg:true | +| 5 | [인사관리 > 사원관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [인사관리 > 사원관리] 목록으로 복귀 | GO_BACK | ✅ | 2006ms | GO_BACK | +| 7 | [인사관리 > 사원관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 8 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 2512ms | Menu navigation: 게시판 > 자유게시판 | +| 9 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 11 | [게시판 > 자유게시판] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:10 | +| 12 | [게시판 > 자유게시판] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 503ms | CLICK_ROW / urlChg:true | +| 13 | [게시판 > 자유게시판] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1502ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [게시판 > 자유게시판] 목록으로 복귀 | GO_BACK | ✅ | 2013ms | GO_BACK | +| 15 | [게시판 > 자유게시판] 목록 무결성 확인 | LIST_INTACT | ✅ | 1508ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 17 | 17 | 0 | 103ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/success/OK-detail-roundtrip-sales_2026-03-08_14-55-24.md b/success/OK-detail-roundtrip-sales_2026-03-08_14-55-24.md new file mode 100644 index 0000000..79ce202 --- /dev/null +++ b/success/OK-detail-roundtrip-sales_2026-03-08_14-55-24.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 판매 + +**테스트 ID**: detail-roundtrip-sales | **실행**: 2026-03-08_14-55-24 | **결과**: PASS +**소요 시간**: 32.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | [판매관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 4 | [판매관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 510ms | CLICK_ROW / urlChg:true | +| 5 | [판매관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1510ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [판매관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2001ms | GO_BACK | +| 7 | [판매관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | +| 8 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 508ms | Menu navigation: 판매관리 > 수주관리 | +| 9 | [판매관리 > 수주관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 10 | [판매관리 > 수주관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매관리 > 수주관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 12 | [판매관리 > 수주관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 13 | [판매관리 > 수주관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [판매관리 > 수주관리] 목록으로 복귀 | GO_BACK | ✅ | 2003ms | GO_BACK | +| 15 | [판매관리 > 수주관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1507ms | LIST_INTACT / intact:true | +| 16 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 512ms | Menu navigation: 판매관리 > 견적관리 | +| 17 | [판매관리 > 견적관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 18 | [판매관리 > 견적관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [판매관리 > 견적관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 20 | [판매관리 > 견적관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 21 | [판매관리 > 견적관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1512ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [판매관리 > 견적관리] 목록으로 복귀 | GO_BACK | ✅ | 2002ms | GO_BACK | +| 23 | [판매관리 > 견적관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 96ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/success/OK-detail-verify-acc-sales_2026-03-08_14-55-47.md b/success/OK-detail-verify-acc-sales_2026-03-08_14-55-47.md new file mode 100644 index 0000000..0855dae --- /dev/null +++ b/success/OK-detail-verify-acc-sales_2026-03-08_14-55-47.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 목록↔상세 필드별 대조 검증: 매출관리 + +**테스트 ID**: detail-verify-acc-sales | **실행**: 2026-03-08_14-55-47 | **결과**: PASS +**소요 시간**: 23.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5001ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 모든 셀 값 캡처 | CAPTURE | ✅ | 509ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 진입 | READ | ✅ | 2507ms | READ | +| 5 | [회계관리 > 매출관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [VERIFY] 상세 페이지 필드 1:1 대조 | VERIFY | ✅ | 1ms | DETAIL_VERIFY | +| 7 | [회계관리 > 매출관리] [VERIFY] 세금계산서/거래명세서 Switch 상태 확인 | VERIFY | ✅ | 0ms | SWITCH_VERIFY | +| 8 | [회계관리 > 매출관리] [VERIFY] 수정 모드 진입 가능 확인 | VERIFY | ✅ | 2003ms | EDIT_ACCESS | +| 9 | [회계관리 > 매출관리] [CANCEL] 취소 클릭 | CANCEL | ✅ | 2013ms | CANCEL | +| 10 | [회계관리 > 매출관리] [CANCEL] 목록 복귀 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 목록 복귀 후 테이블 확인 | VERIFY | ✅ | 505ms | BACK_VERIFY / rows:2 | +| 12 | [회계관리 > 매출관리] [VERIFY] 취소 후 데이터 무변경 확인 | VERIFY | ✅ | 517ms | NO_CHANGE_VERIFY | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 70ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/success/OK-draft-box_2026-03-08_14-56-00.md b/success/OK-draft-box_2026-03-08_14-56-00.md new file mode 100644 index 0000000..dfa0f49 --- /dev/null +++ b/success/OK-draft-box_2026-03-08_14-56-00.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-08_14-56-00 | **결과**: PASS +**소요 시간**: 12.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2513ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 2 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1521ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 206ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1511ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 306ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 310ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 305ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 0ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 94ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/success/OK-edge-boundary-acc-sales_2026-03-08_14-56-23.md b/success/OK-edge-boundary-acc-sales_2026-03-08_14-56-23.md new file mode 100644 index 0000000..20c857a --- /dev/null +++ b/success/OK-edge-boundary-acc-sales_2026-03-08_14-56-23.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) + +**테스트 ID**: edge-boundary-acc-sales | **실행**: 2026-03-08_14-56-23 | **결과**: PASS +**소요 시간**: 23.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5002ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [EDGE] 등록 폼 열기 | OPEN_FORM | ✅ | 2508ms | OPEN_FORM | +| 4 | [회계관리 > 매출관리] [EDGE] 폼 렌더링 대기 | - | ✅ | 2007ms | Waited 2000ms | +| 5 | [회계관리 > 매출관리] [EDGE] 수량=0 입력 → 자동계산 반응 확인 | BOUNDARY | ✅ | 1ms | ZERO_QTY / 수량 필드 미발견 | +| 6 | [회계관리 > 매출관리] [EDGE] 수량=-1 입력 → 거부/에러 확인 | BOUNDARY | ✅ | 0ms | NEGATIVE_QTY / ⚠️ 음수 입력 에러 미표시 | +| 7 | [회계관리 > 매출관리] [EDGE] 단가=99999.99 소수점 입력 → 처리 확인 | BOUNDARY | ✅ | 0ms | DECIMAL_PRICE / 단가 필드 미발견 | +| 8 | [회계관리 > 매출관리] [EDGE] 품목명 255자 초과 입력 → 잘림/에러 확인 | BOUNDARY | ✅ | 517ms | MAX_LENGTH / ⚠️ 255자 초과 입력이 그대로 수용됨 (274자) | +| 9 | [회계관리 > 매출관리] [EDGE] 특수문자/XSS 입력 → 방어 확인 | BOUNDARY | ✅ | 516ms | XSS_CHECK / ⚠️ XSS 페이로드가 그대로 수용됨 - 서버 측 방어 확인 필요 | +| 10 | [회계관리 > 매출관리] [EDGE] 빈 폼 저장 시도 → 유효성 검사 확인 | BOUNDARY | ✅ | 2973ms | EMPTY_SUBMIT / ✅ 빈 폼 제출 시 유효성 검사 정상 동작 (시그널 2개) | +| 11 | [회계관리 > 매출관리] [EDGE] 빈 폼 제출 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 12 | [회계관리 > 매출관리] [EDGE] 유효성 검사 다이얼로그 닫기 | BOUNDARY | ✅ | 0ms | CLOSE_VALIDATION | +| 13 | [회계관리 > 매출관리] [EDGE] 경계값 종합 평가 | SUMMARY | ✅ | 0ms | BOUNDARY_SUMMARY / 경계값 테스트 6개 항목 실행 완료 | +| 14 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2006ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 84ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/success/OK-edge-boundary-input-accounting_2026-03-08_14-56-47.md b/success/OK-edge-boundary-input-accounting_2026-03-08_14-56-47.md new file mode 100644 index 0000000..b4d5434 --- /dev/null +++ b/success/OK-edge-boundary-input-accounting_2026-03-08_14-56-47.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (회계 > 입금관리) + +**테스트 ID**: edge-boundary-input-accounting | **실행**: 2026-03-08_14-56-47 | **결과**: PASS +**소요 시간**: 23.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2510ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1002ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 315ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1003ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 314ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1001ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1012ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 304ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2504ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2010ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 185ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/success/OK-edge-boundary-input-hr_2026-03-08_14-57-10.md b/success/OK-edge-boundary-input-hr_2026-03-08_14-57-10.md new file mode 100644 index 0000000..b9a18ad --- /dev/null +++ b/success/OK-edge-boundary-input-hr_2026-03-08_14-57-10.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (인사 > 사원관리) + +**테스트 ID**: edge-boundary-input-hr | **실행**: 2026-03-08_14-57-10 | **결과**: PASS +**소요 시간**: 23.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2016ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1004ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 316ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1007ms | MAX_LENGTH_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 305ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1005ms | OVERFLOW_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1012ms | SPECIAL_CHARS_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 12 | 경계값: 공백만 입력 | - | ✅ | 305ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2532ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2010ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 146ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/success/OK-edge-boundary-input-sales_2026-03-08_14-57-33.md b/success/OK-edge-boundary-input-sales_2026-03-08_14-57-33.md new file mode 100644 index 0000000..0d8a536 --- /dev/null +++ b/success/OK-edge-boundary-input-sales_2026-03-08_14-57-33.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (판매 > 거래처관리) + +**테스트 ID**: edge-boundary-input-sales | **실행**: 2026-03-08_14-57-33 | **결과**: PASS +**소요 시간**: 23.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1005ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 306ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1013ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 301ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1014ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1003ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2517ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2004ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 27ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/success/OK-edge-concurrent-action-hr_2026-03-08_14-57-47.md b/success/OK-edge-concurrent-action-hr_2026-03-08_14-57-47.md new file mode 100644 index 0000000..5c8a576 --- /dev/null +++ b/success/OK-edge-concurrent-action-hr_2026-03-08_14-57-47.md @@ -0,0 +1,29 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 동시 액션 (인사 > 근태관리) + +**테스트 ID**: edge-concurrent-action-hr | **실행**: 2026-03-08_14-57-47 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 5 | 5 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 탭/필터 빠른 전환 테스트 | RAPID_TAB_SWITCH | ✅ | 2667ms | RAPID_TAB_SWITCH / ✅ 빠른 전환 후 정상 상태 | +| 4 | 페이지네이션 빠른 클릭 | RAPID_PAGINATION | ✅ | 0ms | RAPID_PAGINATION / W:페이지네이션 버튼 부족 | +| 5 | 다중 버튼 동시 클릭 시뮬레이션 | MULTI_BUTTON_CLICK | ✅ | 2103ms | MULTI_BUTTON_CLICK / ✅ 다중 버튼 클릭 후 정상 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/success/OK-edge-empty-submit-accounting_2026-03-08_14-58-06.md b/success/OK-edge-empty-submit-accounting_2026-03-08_14-58-06.md new file mode 100644 index 0000000..d222d77 --- /dev/null +++ b/success/OK-edge-empty-submit-accounting_2026-03-08_14-58-06.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) + +**테스트 ID**: edge-empty-submit-accounting | **실행**: 2026-03-08_14-58-06 | **결과**: PASS +**소요 시간**: 19.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2503ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2021ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2522ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1012ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2007ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 153ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/success/OK-edge-empty-submit-board_2026-03-08_14-58-25.md b/success/OK-edge-empty-submit-board_2026-03-08_14-58-25.md new file mode 100644 index 0000000..8bed44d --- /dev/null +++ b/success/OK-edge-empty-submit-board_2026-03-08_14-58-25.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) + +**테스트 ID**: edge-empty-submit-board | **실행**: 2026-03-08_14-58-25 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2510ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2014ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 123ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/success/OK-edge-empty-submit-hr_2026-03-08_14-58-44.md b/success/OK-edge-empty-submit-hr_2026-03-08_14-58-44.md new file mode 100644 index 0000000..e6f1c1c --- /dev/null +++ b/success/OK-edge-empty-submit-hr_2026-03-08_14-58-44.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) + +**테스트 ID**: edge-empty-submit-hr | **실행**: 2026-03-08_14-58-44 | **결과**: PASS +**소요 시간**: 19.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2503ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2514ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2002ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 64ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/success/OK-edge-empty-submit-sales_2026-03-08_14-59-03.md b/success/OK-edge-empty-submit-sales_2026-03-08_14-59-03.md new file mode 100644 index 0000000..1941bd8 --- /dev/null +++ b/success/OK-edge-empty-submit-sales_2026-03-08_14-59-03.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) + +**테스트 ID**: edge-empty-submit-sales | **실행**: 2026-03-08_14-59-03 | **결과**: PASS +**소요 시간**: 19.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2508ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2505ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2012ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 24ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/success/OK-edge-numeric-boundary-accounting_2026-03-08_14-59-27.md b/success/OK-edge-numeric-boundary-accounting_2026-03-08_14-59-27.md new file mode 100644 index 0000000..3050587 --- /dev/null +++ b/success/OK-edge-numeric-boundary-accounting_2026-03-08_14-59-27.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 숫자 경계값 (회계 > 입금관리) + +**테스트 ID**: edge-numeric-boundary-accounting | **실행**: 2026-03-08_14-59-27 | **결과**: PASS +**소요 시간**: 23.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 13 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1006ms | FIND_INPUTS | +| 6 | 숫자 필드 탐색 및 0 입력 | NUMERIC_ZERO | ✅ | 528ms | NUMERIC_ZERO | +| 7 | 0 입력 결과 확인 | NUMERIC_ZERO_CHECK | ✅ | 1015ms | NUMERIC_ZERO_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 숫자 필드에 음수 입력 | NUMERIC_NEGATIVE | ✅ | 521ms | NUMERIC_NEGATIVE | +| 9 | 음수 입력 결과 확인 | NUMERIC_NEGATIVE_CHECK | ✅ | 1005ms | NUMERIC_NEGATIVE_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 숫자 필드에 최대값 입력 | NUMERIC_MAX | ✅ | 511ms | NUMERIC_MAX | +| 11 | 최대값 입력 결과 확인 | NUMERIC_MAX_CHECK | ✅ | 1004ms | NUMERIC_MAX_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값 상태로 저장 시도 | NUMERIC_SUBMIT_CHECK | ✅ | 2521ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 13 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2003ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 81ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/success/OK-edge-rapid-click-acc-sales_2026-03-08_14-59-54.md b/success/OK-edge-rapid-click-acc-sales_2026-03-08_14-59-54.md new file mode 100644 index 0000000..4b02a87 --- /dev/null +++ b/success/OK-edge-rapid-click-acc-sales_2026-03-08_14-59-54.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) + +**테스트 ID**: edge-rapid-click-acc-sales | **실행**: 2026-03-08_14-59-54 | **결과**: PASS +**소요 시간**: 27.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5000ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [RAPID] 헤더 체크박스 10회 연타 → 최종 상태 일관성 | RAPID_CLICK | ✅ | 1575ms | RAPID_HEADER_CHECKBOX / ✅ 10회 연타 후 체크박스 일관성 유지 (unchecked, body: 0/20) | +| 4 | [회계관리 > 매출관리] [RAPID] 체크박스 연타 후 안정화 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 5 | [회계관리 > 매출관리] [RAPID] 등록 폼 열기 | OPEN_FORM | ✅ | 2508ms | OPEN_FORM | +| 6 | [회계관리 > 매출관리] [RAPID] 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [RAPID] 등록 버튼 5회 연타 → 중복 제출 방지 확인 | RAPID_CLICK | ✅ | 3270ms | RAPID_SUBMIT / ✅ 5회 연타 시 중복 제출 방지 (POST 0회) | +| 8 | [회계관리 > 매출관리] [RAPID] 연타 후 상태 확인 + 다이얼로그 닫기 | RAPID_CLICK | ✅ | 1001ms | RAPID_RESULT | +| 9 | [회계관리 > 매출관리] [RAPID] 품목 추가 버튼 10회 연타 → 적절한 행 수 확인 | RAPID_CLICK | ✅ | 2840ms | RAPID_ADD_ITEM / ✅ 10회 연타 후 품목 행 10개 추가 (합리적) | +| 10 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2005ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 120ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/success/OK-edge-rapid-click-delete_2026-03-08_15-00-10.md b/success/OK-edge-rapid-click-delete_2026-03-08_15-00-10.md new file mode 100644 index 0000000..730511b --- /dev/null +++ b/success/OK-edge-rapid-click-delete_2026-03-08_15-00-10.md @@ -0,0 +1,30 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-delete | **실행**: 2026-03-08_15-00-10 | **결과**: PASS +**소요 시간**: 15.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 6 | 6 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 첫 번째 행 클릭 | - | ✅ | 503ms | Clicked first row | +| 4 | 상세 페이지 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 5 | 삭제 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_DELETE | ✅ | 2299ms | RAPID_CLICK_DELETE | +| 6 | 연타 후 상태 확인 | RAPID_DELETE_RESULT | ✅ | 2006ms | RAPID_DELETE_RESULT / ✅ 연타 클릭 후 정상 상태 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 118ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/success/OK-edge-rapid-click-save-board_2026-03-08_15-00-30.md b/success/OK-edge-rapid-click-save-board_2026-03-08_15-00-30.md new file mode 100644 index 0000000..2335a77 --- /dev/null +++ b/success/OK-edge-rapid-click-save-board_2026-03-08_15-00-30.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-save-board | **실행**: 2026-03-08_15-00-30 | **결과**: PASS +**소요 시간**: 19.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2520ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2007ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2306ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2015ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2006ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 74ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/success/OK-edge-rapid-click-save-sales_2026-03-08_15-00-49.md b/success/OK-edge-rapid-click-save-sales_2026-03-08_15-00-49.md new file mode 100644 index 0000000..4897020 --- /dev/null +++ b/success/OK-edge-rapid-click-save-sales_2026-03-08_15-00-49.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) + +**테스트 ID**: edge-rapid-click-save-sales | **실행**: 2026-03-08_15-00-49 | **결과**: PASS +**소요 시간**: 19.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2506ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2291ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2003ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2009ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 31ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/success/OK-edge-special-chars-board_2026-03-08_15-01-21.md b/success/OK-edge-special-chars-board_2026-03-08_15-01-21.md new file mode 100644 index 0000000..1279b4b --- /dev/null +++ b/success/OK-edge-special-chars-board_2026-03-08_15-01-21.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 특수문자 검색 (게시판 > 자유게시판) + +**테스트 ID**: edge-special-chars-board | **실행**: 2026-03-08_15-01-21 | **결과**: PASS +**소요 시간**: 31.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 특수문자 검색: