From c5f8ce33d9ea0dfd9262df2a1166ffd94722b6ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Thu, 5 Mar 2026 18:43:55 +0900 Subject: [PATCH] =?UTF-8?q?chore:=205=EC=9D=BC=20=EC=9D=B4=EC=83=81=20?= =?UTF-8?q?=EB=90=9C=20E2E=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EA=B2=B0?= =?UTF-8?q?=EA=B3=BC=20=ED=8C=8C=EC=9D=BC=20=EC=A0=95=EB=A6=AC=20(11?= =?UTF-8?q?=EA=B0=9C=20=EC=82=AD=EC=A0=9C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 2026-02-27 이전 Fail 리포트 및 요약 리포트 삭제 - 개발팀_Hotfix_버그수정_재요청_10차 삭제 Co-Authored-By: Claude Opus 4.6 --- .../Button-Survey_2026-03-04_22-21-22.json | 21833 ++++++++++++++++ .../Button-Survey_2026-03-04_22-21-22.md | 339 + .../Download-Verify_2026-03-04_22-13-37.md | 131 + ...E_FULL_TEST_SUMMARY_2026-02-27_16-08-22.md | 50 - ...E_FULL_TEST_SUMMARY_2026-03-02_21-48-40.md | 20 + ...E_FULL_TEST_SUMMARY_2026-03-02_21-52-17.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-02_21-55-32.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-02_21-58-59.md | 20 + ...E_FULL_TEST_SUMMARY_2026-03-02_22-03-42.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-39-07.md | 22 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-42-04.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-45-29.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-48-25.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-51-31.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-54-50.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_14-58-48.md | 32 + ...E_FULL_TEST_SUMMARY_2026-03-03_15-02-06.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_15-05-38.md | 29 + ...E_FULL_TEST_SUMMARY_2026-03-03_15-08-36.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_15-11-47.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_15-14-55.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_15-18-10.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_16-52-09.md | 289 + ...E_FULL_TEST_SUMMARY_2026-03-03_19-41-16.md | 24 + ...E_FULL_TEST_SUMMARY_2026-03-03_19-48-19.md | 20 + ...E_FULL_TEST_SUMMARY_2026-03-03_19-55-12.md | 21 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-03-59.md | 21 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-18-14.md | 20 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-24-04.md | 20 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-29-13.md | 20 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-35-37.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-38-56.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-41-41.md | 21 + ...E_FULL_TEST_SUMMARY_2026-03-03_20-45-21.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_22-17-45.md | 15 + ...E_FULL_TEST_SUMMARY_2026-03-03_23-33-30.md | 19 + ...E_FULL_TEST_SUMMARY_2026-03-04_11-35-53.md | 292 + ...E_FULL_TEST_SUMMARY_2026-03-04_22-26-54.md | 57 + ...E_FULL_TEST_SUMMARY_2026-03-04_22-29-50.md | 57 + ...E_FULL_TEST_SUMMARY_2026-03-04_22-30-10.md | 71 + ...E_FULL_TEST_SUMMARY_2026-03-05_00-10-32.md | 334 + ...COMPLETENESS_REPORT_2026-03-05_16-26-10.md | 284 + ...full-crud-acc-sales_2026-02-27_16-04-32.md | 63 - ...ail-full-crud-board_2026-02-27_16-05-29.md | 63 - ...lary-long-term-care_2026-03-03_20-41-41.md | 62 + ...persist-acc-deposit_2026-03-03_22-13-33.md | 33 + ...d-persist-acc-sales_2026-03-03_22-13-35.md | 27 + ...eload-persist-board_2026-03-03_22-13-37.md | 27 + .../Fail-sales-client_2026-03-03_22-13-39.md | 27 + ...l-sales-management_2026-03-02_00-02-06.md} | 52 +- ...il-sales-management_2026-03-03_22-13-41.md | 27 + ...s-order-bulk-delete_2026-03-03_22-13-43.md | 27 + .../Fail-sales-order_2026-03-03_22-13-45.md | 27 + .../Fail-sales-pricing_2026-03-03_22-13-47.md | 27 + ...ail-sales-quotation_2026-03-03_22-13-49.md | 27 + ...ail-sales-site-mgmt_2026-03-03_22-13-51.md | 27 + ...il-search-bug-draft_2026-03-03_22-13-53.md | 27 + ...l-search-bug-salary_2026-03-03_22-13-55.md | 27 + ...ch-filter-acc-sales_2026-03-03_22-13-57.md | 27 + ...search-function-acc_2026-03-03_22-13-59.md | 27 + ...function-audit-acc1_2026-03-03_22-14-01.md | 27 + ...ction-audit-acc2-hr_2026-03-03_22-14-03.md | 27 + ...nction-audit-boards_2026-03-03_22-14-05.md | 27 + ...on-audit-production_2026-03-03_22-14-07.md | 27 + ...udit-sales-approval_2026-03-03_22-14-09.md | 27 + ...tion-audit-settings_2026-03-03_22-14-11.md | 27 + ...h-function-hr-board_2026-03-03_22-14-13.md | 27 + ...arch-function-sales_2026-03-03_22-14-15.md | 27 + ...earch-options-acc-1_2026-03-03_22-14-17.md | 27 + ...earch-options-acc-2_2026-03-03_22-14-19.md | 27 + ...earch-options-acc-3_2026-03-03_22-14-21.md | 27 + ...tings-calendar-crud_2026-03-03_19-41-16.md | 78 + ...tings-calendar-crud_2026-03-03_19-48-19.md | 72 + ...tings-calendar-crud_2026-03-03_19-55-12.md | 73 + ...tings-calendar-crud_2026-03-03_20-03-58.md | 64 + ...tings-calendar-crud_2026-03-03_20-18-14.md | 63 + ...tings-calendar-crud_2026-03-03_20-24-04.md | 63 + ...tings-calendar-crud_2026-03-03_20-29-13.md | 63 + ...-work-result_작업실적_20260304_221308.xlsx | Bin 0 -> 17574 bytes .../OK-a11y-acc-client_2026-03-03_15-24-01.md | 28 + .../OK-a11y-acc-client_2026-03-03_21-21-04.md | 28 + .../OK-a11y-acc-client_2026-03-03_22-21-16.md | 28 + .../OK-a11y-acc-client_2026-03-04_10-06-14.md | 28 + .../OK-a11y-acc-client_2026-03-04_22-39-15.md | 28 + ...OK-a11y-acc-deposit_2026-03-03_15-24-13.md | 28 + ...OK-a11y-acc-deposit_2026-03-03_21-21-16.md | 28 + ...OK-a11y-acc-deposit_2026-03-03_22-21-29.md | 28 + ...OK-a11y-acc-deposit_2026-03-04_10-06-27.md | 28 + ...OK-a11y-acc-deposit_2026-03-04_22-39-28.md | 28 + ...K-a11y-acc-purchase_2026-03-03_15-24-25.md | 28 + ...K-a11y-acc-purchase_2026-03-03_21-21-27.md | 28 + ...K-a11y-acc-purchase_2026-03-03_22-21-40.md | 28 + ...K-a11y-acc-purchase_2026-03-04_10-06-39.md | 28 + ...K-a11y-acc-purchase_2026-03-04_22-39-39.md | 28 + .../OK-a11y-acc-sales_2026-03-03_15-24-37.md | 28 + .../OK-a11y-acc-sales_2026-03-03_21-21-40.md | 28 + .../OK-a11y-acc-sales_2026-03-03_22-21-52.md | 28 + .../OK-a11y-acc-sales_2026-03-04_10-06-51.md | 28 + .../OK-a11y-acc-sales_2026-03-04_22-39-52.md | 28 + ...K-a11y-approval-box_2026-03-03_14-38-42.md | 28 + ...K-a11y-approval-box_2026-03-03_15-24-49.md | 28 + ...K-a11y-approval-box_2026-03-03_21-21-52.md | 28 + ...K-a11y-approval-box_2026-03-03_22-22-05.md | 28 + ...K-a11y-approval-box_2026-03-04_10-07-03.md | 28 + ...K-a11y-approval-box_2026-03-04_22-40-05.md | 28 + ...a11y-approval-draft_2026-03-03_15-25-02.md | 28 + ...a11y-approval-draft_2026-03-03_21-22-05.md | 28 + ...a11y-approval-draft_2026-03-03_22-22-17.md | 28 + ...a11y-approval-draft_2026-03-04_10-07-15.md | 28 + ...a11y-approval-draft_2026-03-04_22-40-17.md | 28 + .../OK-a11y-board-free_2026-03-03_15-25-14.md | 28 + .../OK-a11y-board-free_2026-03-03_21-22-17.md | 28 + .../OK-a11y-board-free_2026-03-03_22-22-30.md | 28 + .../OK-a11y-board-free_2026-03-04_10-07-28.md | 28 + .../OK-a11y-board-free_2026-03-04_22-40-30.md | 28 + ...-a11y-hr-attendance_2026-03-03_14-57-53.md | 28 + ...-a11y-hr-attendance_2026-03-03_15-25-26.md | 28 + ...-a11y-hr-attendance_2026-03-03_21-22-29.md | 28 + ...-a11y-hr-attendance_2026-03-03_22-22-42.md | 28 + ...-a11y-hr-attendance_2026-03-04_10-07-40.md | 28 + ...-a11y-hr-attendance_2026-03-04_22-40-43.md | 28 + ...-a11y-hr-department_2026-03-03_15-25-39.md | 28 + ...-a11y-hr-department_2026-03-03_21-22-42.md | 28 + ...-a11y-hr-department_2026-03-03_22-22-54.md | 28 + ...-a11y-hr-department_2026-03-04_10-07-52.md | 28 + ...-a11y-hr-department_2026-03-04_22-40-56.md | 28 + ...OK-a11y-hr-employee_2026-03-03_15-25-51.md | 28 + ...OK-a11y-hr-employee_2026-03-03_21-22-54.md | 28 + ...OK-a11y-hr-employee_2026-03-03_22-23-07.md | 28 + ...OK-a11y-hr-employee_2026-03-04_10-08-05.md | 28 + ...OK-a11y-hr-employee_2026-03-04_22-41-09.md | 28 + .../OK-a11y-hr-salary_2026-03-03_15-05-16.md | 28 + .../OK-a11y-hr-salary_2026-03-03_15-26-03.md | 28 + .../OK-a11y-hr-salary_2026-03-03_21-23-05.md | 28 + .../OK-a11y-hr-salary_2026-03-03_22-23-18.md | 28 + .../OK-a11y-hr-salary_2026-03-04_10-08-16.md | 28 + .../OK-a11y-hr-salary_2026-03-04_22-41-20.md | 28 + ...-material-receiving_2026-03-03_15-26-15.md | 28 + ...-material-receiving_2026-03-03_21-23-18.md | 28 + ...-material-receiving_2026-03-03_22-23-30.md | 28 + ...-material-receiving_2026-03-04_10-08-28.md | 28 + ...-material-receiving_2026-03-04_22-41-33.md | 28 + ...a11y-material-stock_2026-03-03_15-26-27.md | 28 + ...a11y-material-stock_2026-03-03_21-23-30.md | 28 + ...a11y-material-stock_2026-03-03_22-23-42.md | 28 + ...a11y-material-stock_2026-03-04_10-08-40.md | 28 + ...a11y-material-stock_2026-03-04_22-29-51.md | 28 + ...a11y-material-stock_2026-03-04_22-41-44.md | 28 + .../OK-a11y-prod-item_2026-03-03_15-26-39.md | 28 + .../OK-a11y-prod-item_2026-03-03_21-23-41.md | 28 + .../OK-a11y-prod-item_2026-03-03_22-23-53.md | 28 + .../OK-a11y-prod-item_2026-03-04_10-08-51.md | 28 + .../OK-a11y-prod-item_2026-03-04_22-41-56.md | 28 + ...11y-prod-work-order_2026-03-03_15-26-51.md | 28 + ...11y-prod-work-order_2026-03-03_21-23-54.md | 28 + ...11y-prod-work-order_2026-03-03_22-24-05.md | 28 + ...11y-prod-work-order_2026-03-04_10-09-03.md | 28 + ...11y-prod-work-order_2026-03-04_22-42-08.md | 28 + ...K-a11y-sales-client_2026-03-03_15-27-03.md | 28 + ...K-a11y-sales-client_2026-03-03_21-24-06.md | 28 + ...K-a11y-sales-client_2026-03-03_22-24-18.md | 28 + ...K-a11y-sales-client_2026-03-04_10-09-16.md | 28 + ...K-a11y-sales-client_2026-03-04_22-42-21.md | 28 + ...a11y-sales-estimate_2026-03-03_15-27-15.md | 28 + ...a11y-sales-estimate_2026-03-03_21-24-17.md | 28 + ...a11y-sales-estimate_2026-03-03_22-24-29.md | 28 + ...a11y-sales-estimate_2026-03-04_10-09-27.md | 28 + ...a11y-sales-estimate_2026-03-04_22-42-33.md | 28 + ...OK-a11y-sales-order_2026-03-03_15-27-27.md | 28 + ...OK-a11y-sales-order_2026-03-03_21-24-29.md | 28 + ...OK-a11y-sales-order_2026-03-03_22-24-41.md | 28 + ...OK-a11y-sales-order_2026-03-04_10-09-39.md | 28 + ...OK-a11y-sales-order_2026-03-04_22-42-45.md | 28 + ...accounting-bad-debt_2026-03-03_15-27-37.md | 48 + ...accounting-bad-debt_2026-03-03_21-24-40.md | 48 + ...accounting-bad-debt_2026-03-03_22-24-52.md | 48 + ...accounting-bad-debt_2026-03-04_10-09-50.md | 48 + ...accounting-bad-debt_2026-03-04_22-42-57.md | 48 + ...ng-bank-transaction_2026-03-03_15-27-48.md | 43 + ...ng-bank-transaction_2026-03-03_21-24-50.md | 43 + ...ng-bank-transaction_2026-03-03_22-25-02.md | 43 + ...ng-bank-transaction_2026-03-04_10-10-00.md | 43 + ...ng-bank-transaction_2026-03-04_22-26-54.md | 42 + ...ng-bank-transaction_2026-03-04_22-43-07.md | 42 + .../OK-accounting-bill_2026-03-03_15-28-07.md | 48 + .../OK-accounting-bill_2026-03-03_21-25-10.md | 48 + .../OK-accounting-bill_2026-03-03_22-25-22.md | 48 + .../OK-accounting-bill_2026-03-04_10-10-20.md | 48 + .../OK-accounting-bill_2026-03-04_22-43-29.md | 48 + ...unting-card-history_2026-03-03_14-51-31.md | 43 + ...unting-card-history_2026-03-03_15-28-17.md | 43 + ...unting-card-history_2026-03-03_21-25-20.md | 43 + ...unting-card-history_2026-03-03_22-25-32.md | 43 + ...unting-card-history_2026-03-04_10-10-30.md | 43 + ...unting-card-history_2026-03-04_22-29-50.md | 42 + ...unting-card-history_2026-03-04_22-43-40.md | 42 + ...K-accounting-client_2026-03-03_15-28-34.md | 47 + ...K-accounting-client_2026-03-03_21-25-36.md | 47 + ...K-accounting-client_2026-03-03_22-25-48.md | 47 + ...K-accounting-client_2026-03-04_10-10-46.md | 47 + ...K-accounting-client_2026-03-04_22-43-58.md | 47 + ...unting-daily-report_2026-03-03_15-28-46.md | 34 + ...unting-daily-report_2026-03-03_21-25-48.md | 34 + ...unting-daily-report_2026-03-03_22-26-00.md | 34 + ...unting-daily-report_2026-03-04_10-10-58.md | 34 + ...unting-daily-report_2026-03-04_22-44-09.md | 34 + ...-accounting-deposit_2026-03-03_15-29-05.md | 49 + ...-accounting-deposit_2026-03-03_21-26-07.md | 49 + ...-accounting-deposit_2026-03-03_22-26-20.md | 49 + ...-accounting-deposit_2026-03-04_10-11-17.md | 49 + ...-accounting-deposit_2026-03-04_22-44-32.md | 49 + ...ng-expense-forecast_2026-03-03_15-29-17.md | 43 + ...ng-expense-forecast_2026-03-03_21-26-19.md | 43 + ...ng-expense-forecast_2026-03-03_22-26-31.md | 43 + ...ng-expense-forecast_2026-03-04_10-11-29.md | 43 + ...ng-expense-forecast_2026-03-04_22-44-41.md | 40 + ...ccounting-gift-card_2026-03-03_15-18-10.md | 35 + ...ccounting-gift-card_2026-03-03_15-29-29.md | 35 + ...ccounting-gift-card_2026-03-03_21-26-31.md | 35 + ...ccounting-gift-card_2026-03-03_22-26-43.md | 35 + ...ccounting-gift-card_2026-03-04_10-11-41.md | 35 + ...ccounting-gift-card_2026-03-04_22-44-54.md | 35 + ...nting-journal-entry_2026-03-03_15-29-43.md | 36 + ...nting-journal-entry_2026-03-03_21-26-45.md | 36 + ...nting-journal-entry_2026-03-03_22-26-58.md | 36 + ...nting-journal-entry_2026-03-04_10-11-55.md | 36 + ...nting-journal-entry_2026-03-04_22-45-10.md | 36 + ...-accounting-payment_2026-03-03_15-29-57.md | 43 + ...-accounting-payment_2026-03-03_21-26-59.md | 43 + ...-accounting-payment_2026-03-03_22-27-11.md | 43 + ...-accounting-payment_2026-03-04_10-12-09.md | 43 + ...-accounting-payment_2026-03-04_22-45-25.md | 42 + ...accounting-purchase_2026-03-03_15-30-10.md | 42 + ...accounting-purchase_2026-03-03_21-27-12.md | 42 + ...accounting-purchase_2026-03-03_22-27-24.md | 42 + ...accounting-purchase_2026-03-04_10-12-22.md | 42 + ...accounting-purchase_2026-03-04_22-45-37.md | 40 + ...counting-receivable_2026-03-03_15-30-22.md | 43 + ...counting-receivable_2026-03-03_21-27-24.md | 43 + ...counting-receivable_2026-03-03_22-27-36.md | 43 + ...counting-receivable_2026-03-04_10-12-34.md | 43 + ...counting-receivable_2026-03-04_22-45-51.md | 43 + ...OK-accounting-sales_2026-03-03_15-30-35.md | 42 + ...OK-accounting-sales_2026-03-03_21-27-38.md | 42 + ...OK-accounting-sales_2026-03-03_22-27-50.md | 42 + ...OK-accounting-sales_2026-03-04_10-12-48.md | 42 + ...OK-accounting-sales_2026-03-04_22-46-03.md | 40 + ...ccounting-tax-issue_2026-03-03_15-30-46.md | 35 + ...ccounting-tax-issue_2026-03-03_21-27-49.md | 35 + ...ccounting-tax-issue_2026-03-03_22-28-01.md | 35 + ...ccounting-tax-issue_2026-03-04_10-12-59.md | 35 + ...ccounting-tax-issue_2026-03-04_22-46-15.md | 35 + ...accounting-tax-mgmt_2026-03-03_15-30-57.md | 35 + ...accounting-tax-mgmt_2026-03-03_21-28-00.md | 35 + ...accounting-tax-mgmt_2026-03-03_22-28-12.md | 35 + ...accounting-tax-mgmt_2026-03-04_10-13-10.md | 35 + ...accounting-tax-mgmt_2026-03-04_22-46-26.md | 35 + ...counting-withdrawal_2026-03-03_15-31-17.md | 49 + ...counting-withdrawal_2026-03-03_21-28-19.md | 49 + ...counting-withdrawal_2026-03-03_22-28-31.md | 49 + ...counting-withdrawal_2026-03-04_10-13-29.md | 49 + ...counting-withdrawal_2026-03-04_22-46-49.md | 49 + .../OK-api-health-acc_2026-03-03_15-32-03.md | 63 + .../OK-api-health-acc_2026-03-03_21-29-05.md | 63 + .../OK-api-health-acc_2026-03-03_22-29-17.md | 63 + .../OK-api-health-acc_2026-03-04_10-14-15.md | 63 + .../OK-api-health-acc_2026-03-04_22-47-35.md | 63 + ...pi-health-prod-misc_2026-03-03_15-32-50.md | 59 + ...pi-health-prod-misc_2026-03-03_21-29-52.md | 59 + ...pi-health-prod-misc_2026-03-03_22-30-04.md | 59 + ...pi-health-prod-misc_2026-03-04_10-15-02.md | 59 + ...pi-health-prod-misc_2026-03-04_22-48-22.md | 59 + ...api-health-sales-hr_2026-03-03_15-33-37.md | 59 + ...api-health-sales-hr_2026-03-03_21-30-39.md | 59 + ...api-health-sales-hr_2026-03-03_22-30-51.md | 59 + ...api-health-sales-hr_2026-03-04_10-15-49.md | 59 + ...api-health-sales-hr_2026-03-04_22-49-09.md | 59 + .../OK-approval-box_2026-03-03_14-39-07.md | 49 + .../OK-approval-box_2026-03-03_15-34-03.md | 49 + .../OK-approval-box_2026-03-03_21-31-05.md | 49 + .../OK-approval-box_2026-03-03_22-31-16.md | 49 + .../OK-approval-box_2026-03-04_10-16-14.md | 49 + .../OK-approval-box_2026-03-04_22-49-35.md | 49 + ...-attendance-checkin_2026-03-03_14-58-06.md | 45 + ...-attendance-checkin_2026-03-03_15-34-15.md | 45 + ...-attendance-checkin_2026-03-03_21-31-17.md | 45 + ...-attendance-checkin_2026-03-03_22-31-29.md | 45 + ...-attendance-checkin_2026-03-04_10-16-27.md | 46 + ...-attendance-checkin_2026-03-04_22-49-47.md | 46 + ...ch-create-acc-bills_2026-03-03_15-35-52.md | 63 + ...ch-create-acc-bills_2026-03-03_21-32-54.md | 63 + ...ch-create-acc-bills_2026-03-03_22-33-05.md | 63 + ...ch-create-acc-bills_2026-03-04_10-18-03.md | 63 + ...ch-create-acc-bills_2026-03-04_22-51-24.md | 63 + ...create-acc-deposit_2026-03-03_15-37-34.md} | 78 +- ...-create-acc-deposit_2026-03-03_21-34-36.md | 63 + ...-create-acc-deposit_2026-03-03_22-34-48.md | 63 + ...-create-acc-deposit_2026-03-04_10-19-45.md | 63 + ...create-acc-deposit_2026-03-04_22-53-06.md} | 82 +- ...batch-create-board_2026-03-03_15-39-09.md} | 91 +- ...-batch-create-board_2026-03-03_21-36-11.md | 63 + ...-batch-create-board_2026-03-03_22-36-23.md | 63 + ...-batch-create-board_2026-03-04_10-21-20.md | 63 + ...-batch-create-board_2026-03-04_22-54-41.md | 63 + ...pdate-account-sales_2026-03-03_15-39-36.md | 38 + ...pdate-account-sales_2026-03-03_21-36-38.md | 38 + ...pdate-account-sales_2026-03-03_22-36-50.md | 38 + ...pdate-account-sales_2026-03-04_10-21-47.md | 38 + ...pdate-account-sales_2026-03-04_22-55-07.md | 38 + ...OK-board-management_2026-03-03_15-39-47.md | 46 + ...OK-board-management_2026-03-03_21-36-49.md | 46 + ...OK-board-management_2026-03-03_22-37-01.md | 46 + ...OK-board-management_2026-03-04_10-21-59.md | 46 + ...OK-board-management_2026-03-04_22-55-19.md | 46 + .../OK-board-test_2026-03-03_15-40-02.md | 37 + .../OK-board-test_2026-03-03_21-37-04.md | 37 + .../OK-board-test_2026-03-03_22-37-16.md | 37 + .../OK-board-test_2026-03-04_10-22-13.md | 37 + .../OK-board-test_2026-03-04_22-55-34.md | 37 + .../OK-company-info_2026-03-03_15-40-33.md | 55 + .../OK-company-info_2026-03-03_21-37-36.md | 55 + .../OK-company-info_2026-03-03_22-37-47.md | 55 + .../OK-company-info_2026-03-04_10-22-45.md | 55 + .../OK-company-info_2026-03-04_22-56-12.md | 55 + ...te-delete-acc-bills_2026-03-03_15-41-12.md | 36 + ...te-delete-acc-bills_2026-03-03_21-38-14.md | 36 + ...te-delete-acc-bills_2026-03-03_22-38-26.md | 36 + ...te-delete-acc-bills_2026-03-04_10-23-23.md | 36 + ...te-delete-acc-bills_2026-03-04_22-56-51.md | 36 + ...-delete-acc-deposit_2026-03-03_15-41-48.md | 36 + ...-delete-acc-deposit_2026-03-03_21-38-50.md | 36 + ...-delete-acc-deposit_2026-03-03_22-39-02.md | 36 + ...-delete-acc-deposit_2026-03-04_10-23-59.md | 36 + ...-delete-acc-deposit_2026-03-04_22-57-27.md | 36 + ...reate-delete-board_2026-03-03_15-42-30.md} | 54 +- ...create-delete-board_2026-03-03_21-39-32.md | 39 + ...create-delete-board_2026-03-03_22-39-44.md | 39 + ...create-delete-board_2026-03-04_10-24-41.md | 39 + ...create-delete-board_2026-03-04_22-58-09.md | 39 + ...le-data-consistency_2026-03-03_15-43-09.md | 39 + ...le-data-consistency_2026-03-03_21-40-11.md | 39 + ...le-data-consistency_2026-03-03_22-40-23.md | 39 + ...le-data-consistency_2026-03-04_10-25-21.md | 39 + ...le-data-consistency_2026-03-04_22-58-48.md | 39 + .../OK-customer-event_2026-03-03_15-43-23.md | 43 + .../OK-customer-event_2026-03-03_21-40-25.md | 43 + .../OK-customer-event_2026-03-03_22-40-37.md | 43 + .../OK-customer-event_2026-03-04_10-25-34.md | 43 + .../OK-customer-event_2026-03-04_22-59-04.md | 43 + .../OK-customer-faq_2026-03-03_15-43-34.md | 40 + .../OK-customer-faq_2026-03-03_21-40-36.md | 40 + .../OK-customer-faq_2026-03-03_22-40-48.md | 40 + .../OK-customer-faq_2026-03-04_10-25-45.md | 40 + .../OK-customer-faq_2026-03-04_22-59-17.md | 40 + ...OK-customer-inquiry_2026-03-03_15-43-48.md | 36 + ...OK-customer-inquiry_2026-03-03_21-40-51.md | 36 + ...OK-customer-inquiry_2026-03-03_22-41-02.md | 36 + ...OK-customer-inquiry_2026-03-04_10-26-00.md | 36 + ...OK-customer-inquiry_2026-03-04_22-59-33.md | 36 + .../OK-customer-notice_2026-03-03_15-44-02.md | 43 + .../OK-customer-notice_2026-03-03_21-41-04.md | 43 + .../OK-customer-notice_2026-03-03_22-41-16.md | 43 + .../OK-customer-notice_2026-03-04_10-26-14.md | 43 + .../OK-customer-notice_2026-03-04_22-59-49.md | 43 + .../OK-department-add_2026-03-03_15-44-15.md | 40 + .../OK-department-add_2026-03-03_21-41-17.md | 40 + .../OK-department-add_2026-03-03_22-41-29.md | 40 + .../OK-department-add_2026-03-04_10-26-27.md | 43 + .../OK-department-add_2026-03-04_23-00-04.md | 40 + ...-deposit-management_2026-03-03_15-44-31.md | 45 + ...-deposit-management_2026-03-03_21-41-33.md | 45 + ...-deposit-management_2026-03-03_22-41-45.md | 45 + ...-deposit-management_2026-03-04_10-26-42.md | 45 + ...-deposit-management_2026-03-04_23-00-20.md | 45 + ...etail-roundtrip-acc_2026-03-03_15-45-04.md | 47 + ...etail-roundtrip-acc_2026-03-03_21-42-06.md | 47 + ...etail-roundtrip-acc_2026-03-03_22-42-17.md | 47 + ...etail-roundtrip-acc_2026-03-04_10-27-15.md | 47 + ...etail-roundtrip-acc_2026-03-04_23-00-52.md | 47 + ...-roundtrip-hr-board_2026-03-03_15-45-29.md | 39 + ...-roundtrip-hr-board_2026-03-03_21-42-32.md | 39 + ...-roundtrip-hr-board_2026-03-03_22-42-43.md | 39 + ...-roundtrip-hr-board_2026-03-04_10-27-41.md | 39 + ...-roundtrip-hr-board_2026-03-04_23-01-18.md | 39 + ...ail-roundtrip-sales_2026-03-03_15-46-02.md | 47 + ...ail-roundtrip-sales_2026-03-03_21-43-04.md | 47 + ...ail-roundtrip-sales_2026-03-03_22-43-16.md | 47 + ...ail-roundtrip-sales_2026-03-04_10-28-13.md | 47 + ...ail-roundtrip-sales_2026-03-04_23-01-51.md | 47 + ...il-verify-acc-sales_2026-03-03_15-46-25.md | 36 + ...il-verify-acc-sales_2026-03-03_21-43-28.md | 36 + ...il-verify-acc-sales_2026-03-03_22-43-39.md | 36 + ...il-verify-acc-sales_2026-03-04_10-28-37.md | 36 + ...il-verify-acc-sales_2026-03-04_23-02-14.md | 36 + .../OK-draft-box_2026-03-03_14-42-04.md | 41 + .../OK-draft-box_2026-03-03_15-46-37.md | 41 + .../OK-draft-box_2026-03-03_21-43-39.md | 41 + .../OK-draft-box_2026-03-03_22-43-51.md | 41 + .../OK-draft-box_2026-03-04_10-28-49.md | 41 + .../OK-draft-box_2026-03-04_23-02-27.md | 41 + ...-boundary-acc-sales_2026-03-03_15-47-01.md | 38 + ...-boundary-acc-sales_2026-03-03_21-44-03.md | 38 + ...-boundary-acc-sales_2026-03-03_22-44-15.md | 38 + ...-boundary-acc-sales_2026-03-04_10-29-12.md | 38 + ...-boundary-acc-sales_2026-03-04_23-02-51.md | 38 + ...ry-input-accounting_2026-03-03_15-47-24.md | 38 + ...ry-input-accounting_2026-03-03_21-44-26.md | 38 + ...ry-input-accounting_2026-03-03_22-44-38.md | 38 + ...ry-input-accounting_2026-03-04_10-29-36.md | 38 + ...ry-input-accounting_2026-03-04_23-03-14.md | 38 + ...e-boundary-input-hr_2026-03-03_15-47-48.md | 38 + ...e-boundary-input-hr_2026-03-03_21-44-50.md | 38 + ...e-boundary-input-hr_2026-03-03_22-45-01.md | 38 + ...e-boundary-input-hr_2026-03-04_10-29-59.md | 38 + ...e-boundary-input-hr_2026-03-04_23-03-37.md | 38 + ...oundary-input-sales_2026-03-03_15-48-11.md | 38 + ...oundary-input-sales_2026-03-03_21-45-13.md | 38 + ...oundary-input-sales_2026-03-03_22-45-25.md | 38 + ...oundary-input-sales_2026-03-04_10-30-22.md | 38 + ...oundary-input-sales_2026-03-04_23-04-01.md | 38 + ...oncurrent-action-hr_2026-03-03_15-48-25.md | 29 + ...oncurrent-action-hr_2026-03-03_21-45-27.md | 29 + ...oncurrent-action-hr_2026-03-03_22-45-39.md | 29 + ...oncurrent-action-hr_2026-03-04_10-30-36.md | 29 + ...oncurrent-action-hr_2026-03-04_23-04-15.md | 29 + ...y-submit-accounting_2026-03-03_15-48-44.md | 31 + ...y-submit-accounting_2026-03-03_21-45-46.md | 31 + ...y-submit-accounting_2026-03-03_22-45-58.md | 31 + ...y-submit-accounting_2026-03-04_10-30-55.md | 31 + ...y-submit-accounting_2026-03-04_23-04-34.md | 31 + ...-empty-submit-board_2026-03-03_15-49-03.md | 31 + ...-empty-submit-board_2026-03-03_21-46-05.md | 31 + ...-empty-submit-board_2026-03-03_22-46-17.md | 31 + ...-empty-submit-board_2026-03-04_10-31-14.md | 31 + ...-empty-submit-board_2026-03-04_23-04-53.md | 31 + ...dge-empty-submit-hr_2026-03-03_15-49-22.md | 31 + ...dge-empty-submit-hr_2026-03-03_21-46-25.md | 31 + ...dge-empty-submit-hr_2026-03-03_22-46-36.md | 31 + ...dge-empty-submit-hr_2026-03-04_10-31-34.md | 31 + ...dge-empty-submit-hr_2026-03-04_23-05-12.md | 31 + ...-empty-submit-sales_2026-03-03_15-49-41.md | 31 + ...-empty-submit-sales_2026-03-03_21-46-44.md | 31 + ...-empty-submit-sales_2026-03-03_22-46-55.md | 31 + ...-empty-submit-sales_2026-03-04_10-31-53.md | 31 + ...-empty-submit-sales_2026-03-04_23-05-31.md | 31 + ...boundary-accounting_2026-03-03_15-50-05.md | 37 + ...boundary-accounting_2026-03-03_21-47-07.md | 37 + ...boundary-accounting_2026-03-03_22-47-19.md | 37 + ...boundary-accounting_2026-03-04_10-32-17.md | 37 + ...boundary-accounting_2026-03-04_23-05-55.md | 37 + ...pid-click-acc-sales_2026-03-03_15-50-32.md | 34 + ...pid-click-acc-sales_2026-03-03_21-47-35.md | 34 + ...pid-click-acc-sales_2026-03-03_22-47-46.md | 34 + ...pid-click-acc-sales_2026-03-04_10-32-44.md | 34 + ...pid-click-acc-sales_2026-03-04_23-06-22.md | 34 + ...-rapid-click-delete_2026-03-03_15-50-48.md | 30 + ...-rapid-click-delete_2026-03-03_21-47-51.md | 30 + ...-rapid-click-delete_2026-03-03_22-48-02.md | 30 + ...-rapid-click-delete_2026-03-04_10-33-00.md | 30 + ...-rapid-click-delete_2026-03-04_23-06-38.md | 30 + ...id-click-save-board_2026-03-03_15-51-08.md | 31 + ...id-click-save-board_2026-03-03_21-48-11.md | 31 + ...id-click-save-board_2026-03-03_22-48-22.md | 31 + ...id-click-save-board_2026-03-04_10-33-20.md | 31 + ...id-click-save-board_2026-03-04_23-06-58.md | 31 + ...id-click-save-sales_2026-03-03_15-51-28.md | 31 + ...id-click-save-sales_2026-03-03_21-48-31.md | 31 + ...id-click-save-sales_2026-03-03_22-48-42.md | 31 + ...id-click-save-sales_2026-03-04_10-33-39.md | 31 + ...id-click-save-sales_2026-03-04_23-07-18.md | 31 + ...special-chars-board_2026-03-03_15-52-00.md | 38 + ...special-chars-board_2026-03-03_21-49-03.md | 38 + ...special-chars-board_2026-03-03_22-49-14.md | 38 + ...special-chars-board_2026-03-04_10-34-12.md | 38 + ...special-chars-board_2026-03-04_23-07-50.md | 38 + ...pecial-chars-search_2026-03-03_15-52-32.md | 38 + ...pecial-chars-search_2026-03-03_21-49-35.md | 38 + ...pecial-chars-search_2026-03-03_22-49-46.md | 38 + ...pecial-chars-search_2026-03-04_10-34-44.md | 38 + ...pecial-chars-search_2026-03-04_23-08-22.md | 38 + ...unicode-input-board_2026-03-03_15-52-53.md | 34 + ...unicode-input-board_2026-03-03_21-49-55.md | 34 + ...unicode-input-board_2026-03-03_22-50-07.md | 34 + ...unicode-input-board_2026-03-04_10-35-04.md | 34 + ...unicode-input-board_2026-03-04_23-08-43.md | 34 + ...K-employee-register_2026-03-03_15-53-24.md | 46 + ...K-employee-register_2026-03-03_21-50-26.md | 46 + ...K-employee-register_2026-03-03_22-50-38.md | 46 + ...K-employee-register_2026-03-04_10-35-35.md | 46 + ...K-employee-register_2026-03-04_23-09-14.md | 46 + ...form-validation-acc_2026-03-03_15-54-07.md | 44 + ...form-validation-acc_2026-03-03_21-51-09.md | 44 + ...form-validation-acc_2026-03-03_22-51-21.md | 44 + ...form-validation-acc_2026-03-04_10-36-18.md | 44 + ...form-validation-acc_2026-03-04_23-09-57.md | 44 + ...orm-validation-misc_2026-03-03_15-54-32.md | 37 + ...orm-validation-misc_2026-03-03_21-51-35.md | 37 + ...orm-validation-misc_2026-03-03_22-51-46.md | 37 + ...orm-validation-misc_2026-03-04_10-36-43.md | 37 + ...orm-validation-misc_2026-03-04_23-10-22.md | 37 + ...rm-validation-sales_2026-03-03_15-55-16.md | 44 + ...rm-validation-sales_2026-03-03_21-52-18.md | 44 + ...rm-validation-sales_2026-03-03_22-52-30.md | 44 + ...rm-validation-sales_2026-03-04_10-37-27.md | 44 + ...rm-validation-sales_2026-03-04_23-11-06.md | 44 + .../OK-free-board_2026-03-03_15-55-29.md | 46 + .../OK-free-board_2026-03-03_21-52-31.md | 46 + .../OK-free-board_2026-03-03_22-52-43.md | 46 + .../OK-free-board_2026-03-04_10-37-40.md | 46 + .../OK-free-board_2026-03-04_23-11-19.md | 46 + ...full-crud-acc-bills_2026-03-03_15-56-26.md | 56 + ...full-crud-acc-bills_2026-03-03_21-53-28.md | 56 + ...full-crud-acc-bills_2026-03-03_22-53-40.md | 56 + ...full-crud-acc-bills_2026-03-04_10-38-37.md | 56 + ...full-crud-acc-bills_2026-03-04_23-12-16.md | 56 + ...ll-crud-acc-deposit_2026-03-03_15-57-22.md | 59 + ...ll-crud-acc-deposit_2026-03-03_21-54-24.md | 59 + ...ll-crud-acc-deposit_2026-03-03_22-54-36.md | 59 + ...ll-crud-acc-deposit_2026-03-04_10-39-33.md | 59 + ...ll-crud-acc-deposit_2026-03-04_23-13-12.md | 59 + ...full-crud-acc-sales_2026-03-03_15-58-17.md | 57 + ...full-crud-acc-sales_2026-03-03_21-55-19.md | 57 + ...full-crud-acc-sales_2026-03-03_22-55-32.md | 57 + ...full-crud-acc-sales_2026-03-04_10-40-28.md | 57 + ...full-crud-acc-sales_2026-03-04_23-14-07.md | 57 + .../OK-full-crud-board_2026-03-03_15-59-21.md | 57 + .../OK-full-crud-board_2026-03-03_21-56-23.md | 57 + .../OK-full-crud-board_2026-03-03_22-56-36.md | 57 + .../OK-full-crud-board_2026-03-04_10-41-32.md | 57 + .../OK-full-crud-board_2026-03-04_23-15-11.md | 57 + ...hr-attendance-admin_2026-03-03_14-58-17.md | 38 + ...hr-attendance-admin_2026-03-03_15-59-31.md | 38 + ...hr-attendance-admin_2026-03-03_21-56-34.md | 38 + ...hr-attendance-admin_2026-03-03_22-56-46.md | 38 + ...hr-attendance-admin_2026-03-04_10-41-43.md | 38 + ...hr-attendance-admin_2026-03-04_23-15-21.md | 38 + ...r-attendance-status_2026-03-03_14-58-28.md | 47 + ...r-attendance-status_2026-03-03_15-59-43.md | 47 + ...r-attendance-status_2026-03-03_21-56-46.md | 47 + ...r-attendance-status_2026-03-03_22-56-58.md | 47 + ...r-attendance-status_2026-03-04_10-41-54.md | 48 + ...r-attendance-status_2026-03-04_23-15-33.md | 46 + .../OK-hr-department_2026-03-03_15-59-53.md | 38 + .../OK-hr-department_2026-03-03_21-56-56.md | 38 + .../OK-hr-department_2026-03-03_22-57-08.md | 38 + .../OK-hr-department_2026-03-04_10-42-04.md | 38 + .../OK-hr-department_2026-03-04_23-15-43.md | 38 + .../OK-hr-employee_2026-03-03_16-00-07.md | 46 + .../OK-hr-employee_2026-03-03_21-57-09.md | 46 + .../OK-hr-employee_2026-03-03_22-57-22.md | 46 + .../OK-hr-employee_2026-03-04_10-42-18.md | 46 + .../OK-hr-employee_2026-03-04_23-15-57.md | 46 + ...lary-long-term-care_2026-03-03_20-45-21.md | 40 + ...lary-long-term-care_2026-03-03_21-57-28.md | 40 + ...lary-long-term-care_2026-03-03_22-57-40.md | 40 + ...lary-long-term-care_2026-03-04_10-42-36.md | 40 + ...lary-long-term-care_2026-03-04_23-16-15.md | 40 + .../OK-hr-salary_2026-03-03_15-05-29.md | 46 + .../OK-hr-salary_2026-03-03_16-00-20.md | 46 + .../OK-hr-salary_2026-03-03_21-57-41.md | 46 + .../OK-hr-salary_2026-03-03_22-57-53.md | 46 + .../OK-hr-salary_2026-03-04_10-42-50.md | 46 + .../OK-hr-salary_2026-03-04_23-16-28.md | 46 + .../OK-hr-vacation_2026-03-03_14-54-50.md | 49 + .../OK-hr-vacation_2026-03-03_16-00-39.md | 49 + .../OK-hr-vacation_2026-03-03_21-58-00.md | 49 + .../OK-hr-vacation_2026-03-03_22-58-12.md | 49 + .../OK-hr-vacation_2026-03-04_10-43-08.md | 49 + .../OK-hr-vacation_2026-03-04_23-16-50.md | 49 + ...-input-fields-acc-1_2026-03-03_16-01-33.md | 44 + ...-input-fields-acc-1_2026-03-03_21-58-54.md | 44 + ...-input-fields-acc-1_2026-03-03_22-59-07.md | 44 + ...-input-fields-acc-1_2026-03-04_10-44-03.md | 44 + ...-input-fields-acc-1_2026-03-04_23-17-44.md | 44 + ...-input-fields-acc-2_2026-03-03_16-02-35.md | 37 + ...-input-fields-acc-2_2026-03-03_21-59-55.md | 37 + ...-input-fields-acc-2_2026-03-03_23-00-09.md | 37 + ...-input-fields-acc-2_2026-03-04_10-45-03.md | 37 + ...-input-fields-acc-2_2026-03-04_23-18-45.md | 37 + ...ds-material-quality_2026-03-03_16-03-05.md | 37 + ...ds-material-quality_2026-03-03_22-00-26.md | 37 + ...ds-material-quality_2026-03-03_23-00-40.md | 37 + ...ds-material-quality_2026-03-03_23-31-45.md | 37 + ...ds-material-quality_2026-03-04_10-45-34.md | 37 + ...ds-material-quality_2026-03-04_23-19-16.md | 37 + ...t-fields-production_2026-03-03_16-03-26.md | 37 + ...t-fields-production_2026-03-03_22-00-47.md | 37 + ...t-fields-production_2026-03-03_23-01-01.md | 37 + ...t-fields-production_2026-03-04_10-45-55.md | 37 + ...t-fields-production_2026-03-04_23-19-36.md | 37 + ...-input-fields-sales_2026-03-03_16-04-08.md | 44 + ...-input-fields-sales_2026-03-03_22-01-28.md | 44 + ...-input-fields-sales_2026-03-03_23-01-43.md | 44 + ...-input-fields-sales_2026-03-04_10-46-36.md | 44 + ...-input-fields-sales_2026-03-04_23-20-18.md | 44 + ...OK-inventory-status_2026-03-03_16-04-18.md | 36 + ...OK-inventory-status_2026-03-03_22-01-38.md | 36 + ...OK-inventory-status_2026-03-03_23-01-53.md | 36 + ...OK-inventory-status_2026-03-04_10-46-46.md | 36 + ...OK-inventory-status_2026-03-04_23-20-28.md | 36 + .../OK-item-management_2026-03-03_16-04-38.md | 40 + .../OK-item-management_2026-03-03_22-01-59.md | 40 + .../OK-item-management_2026-03-03_23-02-13.md | 40 + .../OK-item-management_2026-03-04_10-47-07.md | 40 + .../OK-item-management_2026-03-04_23-20-51.md | 40 + .../OK-item-master_2026-03-03_16-04-49.md | 38 + .../OK-item-master_2026-03-03_22-02-10.md | 38 + .../OK-item-master_2026-03-03_23-02-24.md | 38 + .../OK-item-master_2026-03-04_10-47-18.md | 38 + .../OK-item-master_2026-03-04_23-21-02.md | 38 + .../OK-login-test_2026-03-03_16-05-02.md | 48 + .../OK-login-test_2026-03-03_22-02-23.md | 48 + .../OK-login-test_2026-03-03_23-02-37.md | 48 + .../OK-login-test_2026-03-04_10-47-31.md | 48 + .../OK-login-test_2026-03-04_23-21-17.md | 48 + ...K-material-dispatch_2026-03-02_22-03-42.md | 47 + ...K-material-dispatch_2026-03-03_16-05-47.md | 47 + ...K-material-dispatch_2026-03-03_22-03-07.md | 47 + ...K-material-dispatch_2026-03-03_23-03-22.md | 47 + ...K-material-dispatch_2026-03-04_10-48-15.md | 47 + ...K-material-dispatch_2026-03-04_23-22-02.md | 47 + ...-material-receiving_2026-03-03_16-06-05.md | 49 + ...-material-receiving_2026-03-03_22-03-25.md | 49 + ...-material-receiving_2026-03-03_23-03-40.md | 49 + ...-material-receiving_2026-03-04_10-48-33.md | 49 + ...-material-receiving_2026-03-04_23-22-23.md | 49 + .../OK-material-stock_2026-03-03_16-06-15.md | 43 + .../OK-material-stock_2026-03-03_22-03-35.md | 43 + .../OK-material-stock_2026-03-03_23-03-50.md | 43 + .../OK-material-stock_2026-03-04_10-48-43.md | 43 + .../OK-material-stock_2026-03-04_22-30-01.md | 42 + .../OK-material-stock_2026-03-04_23-22-33.md | 42 + ...ulti-item-acc-sales_2026-03-03_16-07-00.md | 46 + ...ulti-item-acc-sales_2026-03-03_22-04-20.md | 46 + ...ulti-item-acc-sales_2026-03-03_23-04-35.md | 46 + ...ulti-item-acc-sales_2026-03-04_10-49-28.md | 46 + ...ulti-item-acc-sales_2026-03-04_23-23-17.md | 46 + ...pagination-sort-acc_2026-03-03_16-07-39.md | 41 + ...pagination-sort-acc_2026-03-03_22-05-00.md | 41 + ...pagination-sort-acc_2026-03-03_23-05-15.md | 41 + ...pagination-sort-acc_2026-03-04_10-50-07.md | 41 + ...pagination-sort-acc_2026-03-04_23-23-57.md | 41 + ...-pagination-sort-hr_2026-03-03_16-08-07.md | 35 + ...-pagination-sort-hr_2026-03-03_22-05-27.md | 35 + ...-pagination-sort-hr_2026-03-03_23-05-42.md | 35 + ...-pagination-sort-hr_2026-03-04_10-50-35.md | 35 + ...-pagination-sort-hr_2026-03-04_23-24-24.md | 35 + ...gination-sort-sales_2026-03-03_16-08-44.md | 41 + ...gination-sort-sales_2026-03-03_22-06-05.md | 41 + ...gination-sort-sales_2026-03-03_23-06-20.md | 41 + ...gination-sort-sales_2026-03-04_10-51-12.md | 41 + ...gination-sort-sales_2026-03-04_23-25-02.md | 41 + ...K-pdf-download-test_2026-03-03_16-08-45.md | 29 + ...K-pdf-download-test_2026-03-03_22-06-06.md | 29 + ...K-pdf-download-test_2026-03-03_23-06-21.md | 29 + ...K-pdf-download-test_2026-03-04_10-51-13.md | 29 + ...K-pdf-download-test_2026-03-04_23-25-03.md | 29 + .../OK-perf-acc-client_2026-03-03_16-08-54.md | 29 + .../OK-perf-acc-client_2026-03-03_22-06-15.md | 29 + .../OK-perf-acc-client_2026-03-03_23-06-30.md | 29 + .../OK-perf-acc-client_2026-03-04_10-51-23.md | 29 + .../OK-perf-acc-client_2026-03-04_23-25-12.md | 29 + ...OK-perf-acc-deposit_2026-03-03_16-09-03.md | 29 + ...OK-perf-acc-deposit_2026-03-03_22-06-24.md | 29 + ...OK-perf-acc-deposit_2026-03-03_23-06-39.md | 29 + ...OK-perf-acc-deposit_2026-03-04_10-51-32.md | 29 + ...OK-perf-acc-deposit_2026-03-04_23-25-21.md | 29 + ...K-perf-acc-purchase_2026-03-03_16-09-12.md | 29 + ...K-perf-acc-purchase_2026-03-03_22-06-33.md | 29 + ...K-perf-acc-purchase_2026-03-03_23-06-49.md | 29 + ...K-perf-acc-purchase_2026-03-04_10-51-41.md | 29 + ...K-perf-acc-purchase_2026-03-04_23-25-30.md | 29 + .../OK-perf-acc-sales_2026-03-03_16-09-21.md | 29 + .../OK-perf-acc-sales_2026-03-03_22-06-42.md | 29 + .../OK-perf-acc-sales_2026-03-03_23-06-58.md | 29 + .../OK-perf-acc-sales_2026-03-04_10-51-50.md | 29 + .../OK-perf-acc-sales_2026-03-04_23-25-39.md | 29 + ...-perf-hr-attendance_2026-03-03_14-58-38.md | 29 + ...-perf-hr-attendance_2026-03-03_16-09-30.md | 29 + ...-perf-hr-attendance_2026-03-03_22-06-51.md | 29 + ...-perf-hr-attendance_2026-03-03_23-07-07.md | 29 + ...-perf-hr-attendance_2026-03-04_10-51-59.md | 29 + ...-perf-hr-attendance_2026-03-04_23-25-49.md | 29 + ...-perf-hr-department_2026-03-03_16-09-40.md | 29 + ...-perf-hr-department_2026-03-03_22-07-00.md | 29 + ...-perf-hr-department_2026-03-03_23-07-16.md | 29 + ...-perf-hr-department_2026-03-04_10-52-08.md | 29 + ...-perf-hr-department_2026-03-04_23-25-58.md | 29 + ...OK-perf-hr-employee_2026-03-03_16-09-49.md | 29 + ...OK-perf-hr-employee_2026-03-03_22-07-10.md | 29 + ...OK-perf-hr-employee_2026-03-03_23-07-25.md | 29 + ...OK-perf-hr-employee_2026-03-04_10-52-17.md | 29 + ...OK-perf-hr-employee_2026-03-04_23-26-07.md | 29 + .../OK-perf-hr-salary_2026-03-03_15-05-38.md | 29 + .../OK-perf-hr-salary_2026-03-03_16-09-58.md | 29 + .../OK-perf-hr-salary_2026-03-03_22-07-19.md | 29 + .../OK-perf-hr-salary_2026-03-03_23-07-34.md | 29 + .../OK-perf-hr-salary_2026-03-04_10-52-26.md | 29 + .../OK-perf-hr-salary_2026-03-04_23-26-16.md | 29 + ...-material-receiving_2026-03-03_16-10-07.md | 29 + ...-material-receiving_2026-03-03_22-07-28.md | 29 + ...-material-receiving_2026-03-03_23-07-43.md | 29 + ...-material-receiving_2026-03-04_10-52-35.md | 29 + ...-material-receiving_2026-03-04_23-26-25.md | 29 + ...perf-material-stock_2026-03-03_16-10-16.md | 29 + ...perf-material-stock_2026-03-03_22-07-37.md | 29 + ...perf-material-stock_2026-03-03_23-07-52.md | 29 + ...perf-material-stock_2026-03-04_10-52-44.md | 29 + ...perf-material-stock_2026-03-04_22-30-10.md | 29 + ...perf-material-stock_2026-03-04_23-26-34.md | 29 + .../OK-perf-prod-item_2026-03-03_16-10-25.md | 29 + .../OK-perf-prod-item_2026-03-03_22-07-46.md | 29 + .../OK-perf-prod-item_2026-03-03_23-08-02.md | 29 + .../OK-perf-prod-item_2026-03-04_10-52-53.md | 29 + .../OK-perf-prod-item_2026-03-04_23-26-43.md | 29 + ...erf-prod-work-order_2026-03-03_16-10-34.md | 29 + ...erf-prod-work-order_2026-03-03_22-07-55.md | 29 + ...erf-prod-work-order_2026-03-03_23-08-11.md | 29 + ...erf-prod-work-order_2026-03-04_10-53-02.md | 29 + ...erf-prod-work-order_2026-03-04_23-26-52.md | 29 + ...rf-prod-work-result_2026-03-03_16-10-43.md | 29 + ...rf-prod-work-result_2026-03-03_22-08-04.md | 29 + ...rf-prod-work-result_2026-03-03_23-08-20.md | 29 + ...rf-prod-work-result_2026-03-04_10-53-12.md | 29 + ...rf-prod-work-result_2026-03-04_23-27-01.md | 29 + ...K-perf-sales-client_2026-03-03_16-10-52.md | 29 + ...K-perf-sales-client_2026-03-03_22-08-13.md | 29 + ...K-perf-sales-client_2026-03-03_23-08-29.md | 29 + ...K-perf-sales-client_2026-03-04_10-53-21.md | 29 + ...K-perf-sales-client_2026-03-04_23-27-10.md | 29 + ...perf-sales-estimate_2026-03-03_16-11-01.md | 29 + ...perf-sales-estimate_2026-03-03_22-08-22.md | 29 + ...perf-sales-estimate_2026-03-03_23-08-38.md | 29 + ...perf-sales-estimate_2026-03-04_10-53-30.md | 29 + ...perf-sales-estimate_2026-03-04_23-27-19.md | 29 + ...OK-perf-sales-order_2026-03-03_16-11-10.md | 29 + ...OK-perf-sales-order_2026-03-03_22-08-31.md | 29 + ...OK-perf-sales-order_2026-03-03_23-08-47.md | 29 + ...OK-perf-sales-order_2026-03-04_10-53-39.md | 29 + ...OK-perf-sales-order_2026-03-04_23-27-29.md | 29 + ...OK-perf-sales-price_2026-03-03_16-11-19.md | 29 + ...OK-perf-sales-price_2026-03-03_22-08-40.md | 29 + ...OK-perf-sales-price_2026-03-03_23-08-56.md | 29 + ...OK-perf-sales-price_2026-03-04_10-53-48.md | 29 + ...OK-perf-sales-price_2026-03-04_23-27-38.md | 29 + ...roduction-dashboard_2026-03-03_16-11-31.md | 36 + ...roduction-dashboard_2026-03-03_22-08-52.md | 36 + ...roduction-dashboard_2026-03-03_23-09-09.md | 36 + ...roduction-dashboard_2026-03-04_10-54-00.md | 36 + ...roduction-dashboard_2026-03-04_23-27-51.md | 36 + .../OK-production-item_2026-03-03_16-11-42.md | 38 + .../OK-production-item_2026-03-03_22-09-03.md | 38 + .../OK-production-item_2026-03-03_23-09-19.md | 38 + .../OK-production-item_2026-03-04_10-54-11.md | 38 + .../OK-production-item_2026-03-04_23-28-02.md | 38 + ...oduction-work-order_2026-03-03_16-12-24.md | 54 + ...oduction-work-order_2026-03-03_22-09-45.md | 54 + ...oduction-work-order_2026-03-03_23-10-01.md | 54 + ...oduction-work-order_2026-03-04_10-54-52.md | 54 + ...oduction-work-order_2026-03-04_23-28-44.md | 54 + ...duction-work-result_2026-03-03_16-12-40.md | 47 + ...duction-work-result_2026-03-03_22-10-01.md | 47 + ...duction-work-result_2026-03-03_23-10-18.md | 47 + ...duction-work-result_2026-03-04_10-55-09.md | 47 + ...duction-work-result_2026-03-04_23-29-02.md | 47 + ...K-production-worker_2026-03-03_16-12-51.md | 38 + ...K-production-worker_2026-03-03_22-10-12.md | 38 + ...K-production-worker_2026-03-03_23-10-28.md | 38 + ...K-production-worker_2026-03-04_10-55-19.md | 38 + ...K-production-worker_2026-03-04_23-29-13.md | 38 + .../OK-purchase-order_2026-03-03_16-13-05.md | 36 + .../OK-purchase-order_2026-03-03_22-10-26.md | 36 + .../OK-purchase-order_2026-03-03_23-10-42.md | 36 + .../OK-purchase-order_2026-03-04_10-55-33.md | 36 + .../OK-purchase-order_2026-03-04_23-29-28.md | 36 + .../OK-purchase-price_2026-03-03_16-13-25.md | 35 + .../OK-purchase-price_2026-03-03_22-10-46.md | 35 + .../OK-purchase-price_2026-03-03_23-11-03.md | 35 + .../OK-purchase-price_2026-03-04_10-55-54.md | 35 + .../OK-purchase-price_2026-03-04_23-29-50.md | 35 + .../OK-purchase-status_2026-03-03_16-13-38.md | 34 + .../OK-purchase-status_2026-03-03_22-10-59.md | 34 + .../OK-purchase-status_2026-03-03_23-11-15.md | 34 + .../OK-purchase-status_2026-03-04_10-56-06.md | 34 + .../OK-purchase-status_2026-03-04_23-30-03.md | 33 + .../OK-purchase-vendor_2026-03-03_16-13-52.md | 35 + .../OK-purchase-vendor_2026-03-03_22-11-13.md | 35 + .../OK-purchase-vendor_2026-03-03_23-11-29.md | 35 + .../OK-purchase-vendor_2026-03-04_10-56-20.md | 35 + .../OK-purchase-vendor_2026-03-04_23-30-18.md | 35 + ...ality-certification_2026-03-03_16-14-01.md | 38 + ...ality-certification_2026-03-03_22-11-22.md | 38 + ...ality-certification_2026-03-03_23-11-39.md | 38 + ...ality-certification_2026-03-03_23-31-55.md | 38 + ...ality-certification_2026-03-04_10-56-30.md | 38 + ...ality-certification_2026-03-04_23-30-28.md | 38 + ...-quality-inspection_2026-03-03_16-14-19.md | 49 + ...-quality-inspection_2026-03-03_22-11-40.md | 49 + ...-quality-inspection_2026-03-03_22-17-45.md | 40 + ...-quality-inspection_2026-03-03_23-11-53.md | 40 + ...-quality-inspection_2026-03-03_23-32-07.md | 41 + ...-quality-inspection_2026-03-04_10-56-42.md | 41 + ...-quality-inspection_2026-03-04_23-30-40.md | 41 + ...-performance-report_2026-03-03_16-14-29.md | 36 + ...-performance-report_2026-03-03_22-11-50.md | 36 + ...-performance-report_2026-03-03_23-12-04.md | 36 + ...-performance-report_2026-03-03_23-32-16.md | 36 + ...-performance-report_2026-03-04_10-56-52.md | 36 + ...-performance-report_2026-03-04_23-30-49.md | 36 + ...eceiving-management_2026-03-03_16-14-39.md | 33 + ...eceiving-management_2026-03-03_22-12-00.md | 33 + ...eceiving-management_2026-03-03_23-12-13.md | 33 + ...eceiving-management_2026-03-04_10-57-02.md | 33 + ...eceiving-management_2026-03-04_23-30-59.md | 33 + .../OK-reference-box_2026-03-03_14-45-29.md | 64 + .../OK-reference-box_2026-03-03_16-15-07.md | 64 + .../OK-reference-box_2026-03-03_22-12-28.md | 64 + .../OK-reference-box_2026-03-03_23-12-41.md | 64 + .../OK-reference-box_2026-03-04_10-57-29.md | 64 + .../OK-reference-box_2026-03-04_23-31-28.md | 64 + ...d-persist-acc-bills_2026-03-03_16-15-53.md | 42 + ...d-persist-acc-bills_2026-03-03_22-13-13.md | 42 + ...d-persist-acc-bills_2026-03-03_23-13-27.md | 42 + ...d-persist-acc-bills_2026-03-04_10-58-15.md | 42 + ...d-persist-acc-bills_2026-03-04_23-32-14.md | 42 + ...persist-acc-deposit_2026-03-03_16-16-44.md | 40 + ...persist-acc-deposit_2026-03-03_23-14-18.md | 40 + ...ersist-acc-deposit_2026-03-04_10-59-07.md} | 55 +- ...persist-acc-deposit_2026-03-04_23-33-06.md | 40 + ...d-persist-acc-sales_2026-03-03_16-17-34.md | 40 + ...d-persist-acc-sales_2026-03-03_23-15-08.md | 40 + ...d-persist-acc-sales_2026-03-04_10-59-56.md | 40 + ...d-persist-acc-sales_2026-03-04_23-33-55.md | 40 + ...eload-persist-board_2026-03-03_16-18-30.md | 43 + ...eload-persist-board_2026-03-03_23-16-04.md | 43 + ...eload-persist-board_2026-03-04_11-00-52.md | 43 + ...load-persist-board_2026-03-04_23-34-51.md} | 52 +- .../OK-sales-client_2026-03-03_16-18-49.md | 48 + .../OK-sales-client_2026-03-03_23-16-23.md | 48 + .../OK-sales-client_2026-03-04_11-01-11.md | 48 + .../OK-sales-client_2026-03-04_23-35-11.md | 47 + ...OK-sales-management_2026-03-03_16-19-51.md | 47 + ...OK-sales-management_2026-03-03_23-17-26.md | 47 + ...OK-sales-management_2026-03-04_11-02-13.md | 47 + ...OK-sales-management_2026-03-04_23-36-13.md | 47 + ...s-order-bulk-delete_2026-03-03_20-38-56.md | 44 + ...s-order-bulk-delete_2026-03-03_23-18-06.md | 44 + ...s-order-bulk-delete_2026-03-04_11-02-53.md | 44 + ...s-order-bulk-delete_2026-03-04_23-36-53.md | 44 + .../OK-sales-order_2026-03-03_16-20-40.md | 59 + .../OK-sales-order_2026-03-03_23-18-54.md | 59 + .../OK-sales-order_2026-03-04_11-03-41.md | 59 + .../OK-sales-order_2026-03-04_23-37-41.md | 59 + .../OK-sales-pricing_2026-03-03_16-20-54.md | 51 + .../OK-sales-pricing_2026-03-03_23-19-09.md | 51 + .../OK-sales-pricing_2026-03-04_11-03-56.md | 51 + .../OK-sales-pricing_2026-03-04_23-37-56.md | 50 + .../OK-sales-quotation_2026-03-03_16-21-39.md | 56 + .../OK-sales-quotation_2026-03-03_23-19-54.md | 56 + .../OK-sales-quotation_2026-03-04_11-04-41.md | 56 + .../OK-sales-quotation_2026-03-04_23-38-42.md | 56 + .../OK-sales-site-mgmt_2026-03-03_16-21-53.md | 35 + .../OK-sales-site-mgmt_2026-03-03_23-20-08.md | 35 + .../OK-sales-site-mgmt_2026-03-04_11-04-55.md | 35 + .../OK-sales-site-mgmt_2026-03-04_23-38-57.md | 35 + ...OK-search-bug-draft_2026-03-03_16-22-19.md | 35 + ...OK-search-bug-draft_2026-03-03_23-20-33.md | 35 + ...OK-search-bug-draft_2026-03-04_11-05-20.md | 35 + ...OK-search-bug-draft_2026-03-04_23-39-22.md | 35 + ...K-search-bug-salary_2026-03-03_16-22-46.md | 34 + ...K-search-bug-salary_2026-03-03_23-21-01.md | 34 + ...K-search-bug-salary_2026-03-04_11-05-47.md | 34 + ...K-search-bug-salary_2026-03-04_23-39-49.md | 34 + ...ch-filter-acc-sales_2026-03-03_16-23-18.md | 42 + ...ch-filter-acc-sales_2026-03-03_23-21-33.md | 42 + ...ch-filter-acc-sales_2026-03-04_11-06-20.md | 42 + ...ch-filter-acc-sales_2026-03-04_23-40-22.md | 42 + ...search-function-acc_2026-03-03_16-24-11.md | 44 + ...search-function-acc_2026-03-03_23-22-26.md | 44 + ...search-function-acc_2026-03-04_11-07-12.md | 44 + ...search-function-acc_2026-03-04_23-41-14.md | 44 + ...function-audit-acc1_2026-03-03_16-24-55.md | 44 + ...function-audit-acc1_2026-03-03_23-23-10.md | 44 + ...function-audit-acc1_2026-03-04_11-07-56.md | 44 + ...function-audit-acc1_2026-03-04_23-41-58.md | 44 + ...ction-audit-acc2-hr_2026-03-03_16-25-31.md | 49 + ...ction-audit-acc2-hr_2026-03-03_23-23-47.md | 49 + ...ction-audit-acc2-hr_2026-03-04_11-08-32.md | 49 + ...ction-audit-acc2-hr_2026-03-04_23-42-35.md | 49 + ...nction-audit-boards_2026-03-03_16-26-08.md | 44 + ...nction-audit-boards_2026-03-03_23-24-24.md | 44 + ...nction-audit-boards_2026-03-04_11-09-09.md | 44 + ...nction-audit-boards_2026-03-04_23-43-11.md | 44 + ...on-audit-production_2026-03-03_16-26-38.md | 44 + ...on-audit-production_2026-03-03_23-24-54.md | 44 + ...on-audit-production_2026-03-04_11-09-39.md | 44 + ...on-audit-production_2026-03-04_23-43-42.md | 44 + ...udit-sales-approval_2026-03-03_16-27-16.md | 48 + ...udit-sales-approval_2026-03-03_23-25-32.md | 40 + ...udit-sales-approval_2026-03-04_11-10-17.md | 48 + ...udit-sales-approval_2026-03-04_23-44-19.md | 48 + ...tion-audit-settings_2026-03-03_16-27-40.md | 38 + ...tion-audit-settings_2026-03-03_23-25-56.md | 38 + ...tion-audit-settings_2026-03-04_11-10-41.md | 38 + ...tion-audit-settings_2026-03-04_23-44-43.md | 38 + ...h-function-hr-board_2026-03-03_16-28-19.md | 37 + ...h-function-hr-board_2026-03-03_23-26-36.md | 37 + ...h-function-hr-board_2026-03-04_11-11-21.md | 37 + ...h-function-hr-board_2026-03-04_23-45-23.md | 37 + ...arch-function-sales_2026-03-03_16-29-00.md | 44 + ...arch-function-sales_2026-03-03_23-27-17.md | 44 + ...arch-function-sales_2026-03-04_11-12-02.md | 44 + ...arch-function-sales_2026-03-04_23-46-04.md | 44 + ...earch-options-acc-1_2026-03-03_16-30-31.md | 35 + ...earch-options-acc-1_2026-03-03_23-28-49.md | 35 + ...earch-options-acc-1_2026-03-04_11-13-33.md | 35 + ...earch-options-acc-1_2026-03-04_23-47-35.md | 35 + ...earch-options-acc-2_2026-03-03_16-31-57.md | 35 + ...earch-options-acc-2_2026-03-03_23-30-14.md | 35 + ...earch-options-acc-2_2026-03-04_11-14-58.md | 35 + ...earch-options-acc-2_2026-03-04_23-49-00.md | 35 + ...earch-options-acc-3_2026-03-03_16-33-44.md | 35 + ...earch-options-acc-3_2026-03-03_23-32-11.md | 35 + ...earch-options-acc-3_2026-03-04_11-16-45.md | 35 + ...earch-options-acc-3_2026-03-04_23-50-56.md | 35 + ...earch-options-acc-4_2026-03-03_16-34-34.md | 35 + ...earch-options-acc-4_2026-03-03_23-33-02.md | 35 + ...earch-options-acc-4_2026-03-04_11-17-35.md | 35 + ...earch-options-acc-4_2026-03-04_23-51-47.md | 35 + ...ch-options-approval_2026-03-03_16-35-49.md | 35 + ...ch-options-approval_2026-03-03_23-34-17.md | 35 + ...ch-options-approval_2026-03-04_11-18-50.md | 35 + ...ch-options-approval_2026-03-04_23-53-02.md | 35 + ...ons-boards-customer_2026-03-03_16-37-14.md | 43 + ...ons-boards-customer_2026-03-03_23-35-42.md | 43 + ...ons-boards-customer_2026-03-04_11-20-15.md | 43 + ...ons-boards-customer_2026-03-04_23-54-27.md | 43 + ...K-search-options-hr_2026-03-03_16-39-01.md | 51 + ...K-search-options-hr_2026-03-03_23-37-30.md | 51 + ...K-search-options-hr_2026-03-04_11-22-02.md | 51 + ...K-search-options-hr_2026-03-04_23-56-14.md | 51 + ...-options-production_2026-03-03_16-39-51.md | 43 + ...-options-production_2026-03-03_23-38-20.md | 43 + ...-options-production_2026-03-04_11-22-51.md | 43 + ...-options-production_2026-03-04_23-57-03.md | 43 + ...ns-quality-material_2026-03-03_16-41-05.md | 39 + ...ns-quality-material_2026-03-03_23-33-30.md | 39 + ...ns-quality-material_2026-03-03_23-39-34.md | 39 + ...ns-quality-material_2026-03-04_11-24-05.md | 39 + ...ns-quality-material_2026-03-04_23-58-17.md | 39 + ...earch-options-sales_2026-03-03_16-41-46.md | 43 + ...earch-options-sales_2026-03-03_23-40-15.md | 43 + ...earch-options-sales_2026-03-04_11-24-46.md | 43 + ...earch-options-sales_2026-03-04_23-58-58.md | 43 + ...ch-options-settings_2026-03-03_16-42-26.md | 43 + ...ch-options-settings_2026-03-03_23-40-56.md | 43 + ...ch-options-settings_2026-03-04_11-25-27.md | 43 + ...ch-options-settings_2026-03-04_23-59-39.md | 43 + ...OK-settings-account_2026-03-03_16-42-38.md | 40 + ...OK-settings-account_2026-03-03_23-41-07.md | 40 + ...OK-settings-account_2026-03-04_11-25-38.md | 40 + ...OK-settings-account_2026-03-04_23-59-51.md | 40 + ...settings-attendance_2026-03-03_14-58-48.md | 40 + ...settings-attendance_2026-03-03_16-42-48.md | 40 + ...settings-attendance_2026-03-03_23-41-18.md | 40 + ...settings-attendance_2026-03-04_11-25-48.md | 40 + ...settings-attendance_2026-03-05_00-00-03.md | 40 + ...ttings-bank-account_2026-03-03_15-02-06.md | 47 + ...ttings-bank-account_2026-03-03_16-43-00.md | 47 + ...ttings-bank-account_2026-03-03_23-41-30.md | 47 + ...ttings-bank-account_2026-03-04_11-26-00.md | 47 + ...ttings-bank-account_2026-03-05_00-00-16.md | 47 + ...K-settings-barobill_2026-03-03_15-11-47.md | 32 + ...K-settings-barobill_2026-03-03_16-43-12.md | 32 + ...K-settings-barobill_2026-03-03_23-41-42.md | 32 + ...K-settings-barobill_2026-03-04_11-26-12.md | 32 + ...K-settings-barobill_2026-03-05_00-00-29.md | 32 + ...tings-calendar-crud_2026-03-03_20-35-37.md | 44 + ...tings-calendar-crud_2026-03-03_23-42-26.md | 44 + ...tings-calendar-crud_2026-03-04_11-26-56.md | 44 + ...tings-calendar-crud_2026-03-05_00-01-14.md | 44 + ...K-settings-calendar_2026-03-03_15-08-36.md | 32 + ...K-settings-calendar_2026-03-03_16-43-22.md | 32 + ...K-settings-calendar_2026-03-03_23-42-37.md | 32 + ...K-settings-calendar_2026-03-04_11-27-07.md | 32 + ...K-settings-calendar_2026-03-05_00-01-26.md | 32 + .../OK-settings-card_2026-03-02_21-52-17.md | 47 + .../OK-settings-card_2026-03-03_14-48-25.md | 47 + .../OK-settings-card_2026-03-03_16-43-36.md | 47 + .../OK-settings-card_2026-03-03_23-42-51.md | 47 + .../OK-settings-card_2026-03-04_11-27-21.md | 47 + .../OK-settings-card_2026-03-05_00-01-40.md | 47 + ...OK-settings-company_2026-03-03_16-43-49.md | 40 + ...OK-settings-company_2026-03-03_23-43-04.md | 40 + ...OK-settings-company_2026-03-04_11-27-34.md | 40 + ...OK-settings-company_2026-03-05_00-01-55.md | 40 + ...ttings-notification_2026-03-03_16-44-02.md | 40 + ...ttings-notification_2026-03-03_23-43-17.md | 40 + ...ttings-notification_2026-03-04_11-27-46.md | 40 + ...ttings-notification_2026-03-05_00-02-09.md | 40 + ...settings-permission_2026-03-03_16-44-14.md | 44 + ...settings-permission_2026-03-03_23-43-30.md | 44 + ...settings-permission_2026-03-04_11-27-59.md | 44 + ...settings-permission_2026-03-05_00-02-22.md | 44 + .../OK-settings-popup_2026-03-03_16-44-28.md | 47 + .../OK-settings-popup_2026-03-03_23-43-44.md | 47 + .../OK-settings-popup_2026-03-04_11-28-13.md | 47 + .../OK-settings-popup_2026-03-05_00-02-37.md | 47 + ...K-settings-position_2026-03-03_16-44-39.md | 36 + ...K-settings-position_2026-03-03_23-43-55.md | 36 + ...K-settings-position_2026-03-04_11-28-24.md | 36 + ...K-settings-position_2026-03-05_00-02-49.md | 36 + .../OK-settings-rank_2026-03-03_16-44-50.md | 36 + .../OK-settings-rank_2026-03-03_23-44-06.md | 36 + .../OK-settings-rank_2026-03-04_11-28-35.md | 36 + .../OK-settings-rank_2026-03-05_00-03-00.md | 36 + ...ttings-subscription_2026-03-03_16-45-03.md | 40 + ...ttings-subscription_2026-03-03_23-44-18.md | 40 + ...ttings-subscription_2026-03-04_11-28-47.md | 40 + ...ttings-subscription_2026-03-05_00-03-15.md | 40 + ...ngs-vacation-policy_2026-03-03_15-14-55.md | 40 + ...ngs-vacation-policy_2026-03-03_16-45-12.md | 40 + ...ngs-vacation-policy_2026-03-03_23-44-27.md | 40 + ...ngs-vacation-policy_2026-03-04_11-28-56.md | 40 + ...ngs-vacation-policy_2026-03-05_00-03-24.md | 40 + ...tings-work-schedule_2026-03-03_16-45-22.md | 40 + ...tings-work-schedule_2026-03-03_23-44-37.md | 40 + ...tings-work-schedule_2026-03-04_11-29-06.md | 40 + ...tings-work-schedule_2026-03-05_00-03-35.md | 40 + ...shipment-management_2026-03-03_16-45-40.md | 37 + ...shipment-management_2026-03-03_23-44-56.md | 37 + ...shipment-management_2026-03-04_11-29-25.md | 37 + ...shipment-management_2026-03-05_00-03-54.md | 37 + ...-standard-checklist_2026-03-03_16-45-58.md | 35 + ...-standard-checklist_2026-03-03_23-45-14.md | 35 + ...-standard-checklist_2026-03-04_11-29-42.md | 35 + ...-standard-checklist_2026-03-05_00-04-13.md | 35 + ...rd-price-distribute_2026-03-03_16-46-15.md | 35 + ...rd-price-distribute_2026-03-04_11-30-00.md | 35 + ...rd-price-distribute_2026-03-05_00-04-32.md | 35 + ...andard-process-mgmt_2026-03-03_16-46-33.md | 36 + ...andard-process-mgmt_2026-03-04_11-30-18.md | 36 + ...andard-process-mgmt_2026-03-05_00-04-51.md | 36 + ...standard-unit-price_2026-03-03_16-46-51.md | 36 + ...standard-unit-price_2026-03-04_11-30-35.md | 36 + ...standard-unit-price_2026-03-05_00-05-11.md | 36 + ...OK-system-dashboard_2026-03-02_21-55-32.md | 44 + ...OK-system-dashboard_2026-03-03_16-47-02.md | 44 + ...OK-system-dashboard_2026-03-04_11-30-46.md | 44 + ...OK-system-dashboard_2026-03-05_00-05-22.md | 44 + ...-test-bills-14steps_2026-03-03_16-48-03.md | 38 + ...-test-bills-14steps_2026-03-04_11-31-48.md | 38 + ...-test-bills-14steps_2026-03-05_00-06-24.md | 38 + ...-test-bills-minimal_2026-03-03_16-48-11.md | 27 + ...-test-bills-minimal_2026-03-04_11-31-55.md | 27 + ...-test-bills-minimal_2026-03-05_00-06-31.md | 27 + .../OK-vendor-ledger_2026-03-03_16-48-31.md | 58 + .../OK-vendor-ledger_2026-03-04_11-32-15.md | 58 + .../OK-vendor-ledger_2026-03-05_00-06-54.md | 58 + ...K-vendor-management_2026-03-03_16-49-17.md | 60 + ...K-vendor-management_2026-03-04_11-33-01.md | 60 + ...K-vendor-management_2026-03-05_00-07-40.md | 60 + ...thdrawal-management_2026-03-03_16-49-33.md | 45 + ...thdrawal-management_2026-03-04_11-33-17.md | 45 + ...thdrawal-management_2026-03-05_00-07-56.md | 45 + ...flow-board-approval_2026-03-03_16-50-03.md | 39 + ...flow-board-approval_2026-03-04_11-33-47.md | 39 + ...flow-board-approval_2026-03-05_00-08-26.md | 39 + ...employee-onboarding_2026-03-03_16-50-41.md | 38 + ...employee-onboarding_2026-03-04_11-34-25.md | 38 + ...employee-onboarding_2026-03-05_00-09-03.md | 38 + ...low-inventory-cycle_2026-03-03_16-51-20.md | 39 + ...low-inventory-cycle_2026-03-04_11-35-04.md | 39 + ...low-inventory-cycle_2026-03-05_00-09-42.md | 39 + ...purchase-to-payment_2026-03-03_16-51-41.md | 31 + ...purchase-to-payment_2026-03-04_11-35-25.md | 31 + ...purchase-to-payment_2026-03-05_00-10-04.md | 31 + ...low-sales-lifecycle_2026-03-03_16-52-09.md | 46 + ...low-sales-lifecycle_2026-03-04_11-35-53.md | 46 + ...low-sales-lifecycle_2026-03-05_00-10-32.md | 46 + ...팀_Hotfix_버그수정_재요청_10차_2026-02-27.md | 103 - 1081 files changed, 64864 insertions(+), 551 deletions(-) create mode 100644 e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.json create mode 100644 e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.md create mode 100644 e2e/results/hotfix/Download-Verify_2026-03-04_22-13-37.md delete mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-02-27_16-08-22.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-48-40.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-52-17.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-55-32.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-58-59.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_22-03-42.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-39-07.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-42-04.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-45-29.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-48-25.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-51-31.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-54-50.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-58-48.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-02-06.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-05-38.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-08-36.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-11-47.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-14-55.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-18-10.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_16-52-09.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-41-16.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-48-19.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-55-12.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-03-59.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-18-14.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-24-04.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-29-13.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-35-37.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-38-56.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-41-41.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-45-21.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_22-17-45.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_23-33-30.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_11-35-53.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-26-54.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-29-50.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-30-10.md create mode 100644 e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-05_00-10-32.md create mode 100644 e2e/results/hotfix/E2E_SCENARIO_COMPLETENESS_REPORT_2026-03-05_16-26-10.md delete mode 100644 e2e/results/hotfix/Fail-full-crud-acc-sales_2026-02-27_16-04-32.md delete mode 100644 e2e/results/hotfix/Fail-full-crud-board_2026-02-27_16-05-29.md create mode 100644 e2e/results/hotfix/Fail-hr-salary-long-term-care_2026-03-03_20-41-41.md create mode 100644 e2e/results/hotfix/Fail-reload-persist-acc-deposit_2026-03-03_22-13-33.md create mode 100644 e2e/results/hotfix/Fail-reload-persist-acc-sales_2026-03-03_22-13-35.md create mode 100644 e2e/results/hotfix/Fail-reload-persist-board_2026-03-03_22-13-37.md create mode 100644 e2e/results/hotfix/Fail-sales-client_2026-03-03_22-13-39.md rename e2e/results/hotfix/{Fail-sales-management_2026-02-27_16-08-22.md => Fail-sales-management_2026-03-02_00-02-06.md} (70%) create mode 100644 e2e/results/hotfix/Fail-sales-management_2026-03-03_22-13-41.md create mode 100644 e2e/results/hotfix/Fail-sales-order-bulk-delete_2026-03-03_22-13-43.md create mode 100644 e2e/results/hotfix/Fail-sales-order_2026-03-03_22-13-45.md create mode 100644 e2e/results/hotfix/Fail-sales-pricing_2026-03-03_22-13-47.md create mode 100644 e2e/results/hotfix/Fail-sales-quotation_2026-03-03_22-13-49.md create mode 100644 e2e/results/hotfix/Fail-sales-site-mgmt_2026-03-03_22-13-51.md create mode 100644 e2e/results/hotfix/Fail-search-bug-draft_2026-03-03_22-13-53.md create mode 100644 e2e/results/hotfix/Fail-search-bug-salary_2026-03-03_22-13-55.md create mode 100644 e2e/results/hotfix/Fail-search-filter-acc-sales_2026-03-03_22-13-57.md create mode 100644 e2e/results/hotfix/Fail-search-function-acc_2026-03-03_22-13-59.md create mode 100644 e2e/results/hotfix/Fail-search-function-audit-acc1_2026-03-03_22-14-01.md create mode 100644 e2e/results/hotfix/Fail-search-function-audit-acc2-hr_2026-03-03_22-14-03.md create mode 100644 e2e/results/hotfix/Fail-search-function-audit-boards_2026-03-03_22-14-05.md create mode 100644 e2e/results/hotfix/Fail-search-function-audit-production_2026-03-03_22-14-07.md create mode 100644 e2e/results/hotfix/Fail-search-function-audit-sales-approval_2026-03-03_22-14-09.md create mode 100644 e2e/results/hotfix/Fail-search-function-audit-settings_2026-03-03_22-14-11.md create mode 100644 e2e/results/hotfix/Fail-search-function-hr-board_2026-03-03_22-14-13.md create mode 100644 e2e/results/hotfix/Fail-search-function-sales_2026-03-03_22-14-15.md create mode 100644 e2e/results/hotfix/Fail-search-options-acc-1_2026-03-03_22-14-17.md create mode 100644 e2e/results/hotfix/Fail-search-options-acc-2_2026-03-03_22-14-19.md create mode 100644 e2e/results/hotfix/Fail-search-options-acc-3_2026-03-03_22-14-21.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-41-16.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-48-19.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-55-12.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-03-58.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-18-14.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-24-04.md create mode 100644 e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-29-13.md create mode 100644 e2e/results/hotfix/downloads/prod-work-result_작업실적_20260304_221308.xlsx create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_15-24-01.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_21-21-04.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_22-21-16.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_10-06-14.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_22-39-15.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_15-24-13.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_21-21-16.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_22-21-29.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_10-06-27.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_22-39-28.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_15-24-25.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_21-21-27.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_22-21-40.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_10-06-39.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_22-39-39.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_15-24-37.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_21-21-40.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_22-21-52.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_10-06-51.md create mode 100644 e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_22-39-52.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_14-38-42.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_15-24-49.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_21-21-52.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_22-22-05.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_10-07-03.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_22-40-05.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_15-25-02.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_21-22-05.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_22-22-17.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_10-07-15.md create mode 100644 e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_22-40-17.md create mode 100644 e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_15-25-14.md create mode 100644 e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_21-22-17.md create mode 100644 e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_22-22-30.md create mode 100644 e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_10-07-28.md create mode 100644 e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_22-40-30.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_14-57-53.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_15-25-26.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_21-22-29.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_22-22-42.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_10-07-40.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_22-40-43.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_15-25-39.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_21-22-42.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_22-22-54.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_10-07-52.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_22-40-56.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_15-25-51.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_21-22-54.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_22-23-07.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_10-08-05.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_22-41-09.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-05-16.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-26-03.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_21-23-05.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_22-23-18.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_10-08-16.md create mode 100644 e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_22-41-20.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_15-26-15.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_21-23-18.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_22-23-30.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_10-08-28.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_22-41-33.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_15-26-27.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_21-23-30.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_22-23-42.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_10-08-40.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-29-51.md create mode 100644 e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-41-44.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_15-26-39.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_21-23-41.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_22-23-53.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_10-08-51.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_22-41-56.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_15-26-51.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_21-23-54.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_22-24-05.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_10-09-03.md create mode 100644 e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_22-42-08.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_15-27-03.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_21-24-06.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_22-24-18.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_10-09-16.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_22-42-21.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_15-27-15.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_21-24-17.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_22-24-29.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_10-09-27.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_22-42-33.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_15-27-27.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_21-24-29.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_22-24-41.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_10-09-39.md create mode 100644 e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_22-42-45.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_15-27-37.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_21-24-40.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_22-24-52.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_10-09-50.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_22-42-57.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_15-27-48.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_21-24-50.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_22-25-02.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_10-10-00.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-26-54.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-43-07.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_15-28-07.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_21-25-10.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_22-25-22.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_10-10-20.md create mode 100644 e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_22-43-29.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_14-51-31.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_15-28-17.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_21-25-20.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_22-25-32.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_10-10-30.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-29-50.md create mode 100644 e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-43-40.md create mode 100644 e2e/results/hotfix/success/OK-accounting-client_2026-03-03_15-28-34.md create mode 100644 e2e/results/hotfix/success/OK-accounting-client_2026-03-03_21-25-36.md create mode 100644 e2e/results/hotfix/success/OK-accounting-client_2026-03-03_22-25-48.md create mode 100644 e2e/results/hotfix/success/OK-accounting-client_2026-03-04_10-10-46.md create mode 100644 e2e/results/hotfix/success/OK-accounting-client_2026-03-04_22-43-58.md create mode 100644 e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_15-28-46.md create mode 100644 e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_21-25-48.md create mode 100644 e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_22-26-00.md create mode 100644 e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_10-10-58.md create mode 100644 e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_22-44-09.md create mode 100644 e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_15-29-05.md create mode 100644 e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_21-26-07.md create mode 100644 e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_22-26-20.md create mode 100644 e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_10-11-17.md create mode 100644 e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_22-44-32.md create mode 100644 e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_15-29-17.md create mode 100644 e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_21-26-19.md create mode 100644 e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_22-26-31.md create mode 100644 e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_10-11-29.md create mode 100644 e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_22-44-41.md create mode 100644 e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-18-10.md create mode 100644 e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-29-29.md create mode 100644 e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_21-26-31.md create mode 100644 e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_22-26-43.md create mode 100644 e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_10-11-41.md create mode 100644 e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_22-44-54.md create mode 100644 e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_15-29-43.md create mode 100644 e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_21-26-45.md create mode 100644 e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_22-26-58.md create mode 100644 e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_10-11-55.md create mode 100644 e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_22-45-10.md create mode 100644 e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_15-29-57.md create mode 100644 e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_21-26-59.md create mode 100644 e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_22-27-11.md create mode 100644 e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_10-12-09.md create mode 100644 e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_22-45-25.md create mode 100644 e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_15-30-10.md create mode 100644 e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_21-27-12.md create mode 100644 e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_22-27-24.md create mode 100644 e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_10-12-22.md create mode 100644 e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_22-45-37.md create mode 100644 e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_15-30-22.md create mode 100644 e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_21-27-24.md create mode 100644 e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_22-27-36.md create mode 100644 e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_10-12-34.md create mode 100644 e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_22-45-51.md create mode 100644 e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_15-30-35.md create mode 100644 e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_21-27-38.md create mode 100644 e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_22-27-50.md create mode 100644 e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_10-12-48.md create mode 100644 e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_22-46-03.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_15-30-46.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_21-27-49.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_22-28-01.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_10-12-59.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_22-46-15.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_15-30-57.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_21-28-00.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_22-28-12.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_10-13-10.md create mode 100644 e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_22-46-26.md create mode 100644 e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_15-31-17.md create mode 100644 e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_21-28-19.md create mode 100644 e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_22-28-31.md create mode 100644 e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_10-13-29.md create mode 100644 e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_22-46-49.md create mode 100644 e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_15-32-03.md create mode 100644 e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_21-29-05.md create mode 100644 e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_22-29-17.md create mode 100644 e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_10-14-15.md create mode 100644 e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_22-47-35.md create mode 100644 e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_15-32-50.md create mode 100644 e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_21-29-52.md create mode 100644 e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_22-30-04.md create mode 100644 e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_10-15-02.md create mode 100644 e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_22-48-22.md create mode 100644 e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_15-33-37.md create mode 100644 e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_21-30-39.md create mode 100644 e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_22-30-51.md create mode 100644 e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_10-15-49.md create mode 100644 e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_22-49-09.md create mode 100644 e2e/results/hotfix/success/OK-approval-box_2026-03-03_14-39-07.md create mode 100644 e2e/results/hotfix/success/OK-approval-box_2026-03-03_15-34-03.md create mode 100644 e2e/results/hotfix/success/OK-approval-box_2026-03-03_21-31-05.md create mode 100644 e2e/results/hotfix/success/OK-approval-box_2026-03-03_22-31-16.md create mode 100644 e2e/results/hotfix/success/OK-approval-box_2026-03-04_10-16-14.md create mode 100644 e2e/results/hotfix/success/OK-approval-box_2026-03-04_22-49-35.md create mode 100644 e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_14-58-06.md create mode 100644 e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_15-34-15.md create mode 100644 e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_21-31-17.md create mode 100644 e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_22-31-29.md create mode 100644 e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_10-16-27.md create mode 100644 e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_22-49-47.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_15-35-52.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_21-32-54.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_22-33-05.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_10-18-03.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_22-51-24.md rename e2e/results/hotfix/{Fail-batch-create-acc-deposit_2026-02-27_16-01-22.md => success/OK-batch-create-acc-deposit_2026-03-03_15-37-34.md} (53%) create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_21-34-36.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_22-34-48.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_10-19-45.md rename e2e/results/hotfix/{Fail-batch-create-acc-deposit_2026-02-27_18-01-29.md => success/OK-batch-create-acc-deposit_2026-03-04_22-53-06.md} (52%) rename e2e/results/hotfix/{Fail-batch-create-board_2026-02-27_16-02-57.md => success/OK-batch-create-board_2026-03-03_15-39-09.md} (63%) create mode 100644 e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_21-36-11.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_22-36-23.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_10-21-20.md create mode 100644 e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_22-54-41.md create mode 100644 e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_15-39-36.md create mode 100644 e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_21-36-38.md create mode 100644 e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_22-36-50.md create mode 100644 e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_10-21-47.md create mode 100644 e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_22-55-07.md create mode 100644 e2e/results/hotfix/success/OK-board-management_2026-03-03_15-39-47.md create mode 100644 e2e/results/hotfix/success/OK-board-management_2026-03-03_21-36-49.md create mode 100644 e2e/results/hotfix/success/OK-board-management_2026-03-03_22-37-01.md create mode 100644 e2e/results/hotfix/success/OK-board-management_2026-03-04_10-21-59.md create mode 100644 e2e/results/hotfix/success/OK-board-management_2026-03-04_22-55-19.md create mode 100644 e2e/results/hotfix/success/OK-board-test_2026-03-03_15-40-02.md create mode 100644 e2e/results/hotfix/success/OK-board-test_2026-03-03_21-37-04.md create mode 100644 e2e/results/hotfix/success/OK-board-test_2026-03-03_22-37-16.md create mode 100644 e2e/results/hotfix/success/OK-board-test_2026-03-04_10-22-13.md create mode 100644 e2e/results/hotfix/success/OK-board-test_2026-03-04_22-55-34.md create mode 100644 e2e/results/hotfix/success/OK-company-info_2026-03-03_15-40-33.md create mode 100644 e2e/results/hotfix/success/OK-company-info_2026-03-03_21-37-36.md create mode 100644 e2e/results/hotfix/success/OK-company-info_2026-03-03_22-37-47.md create mode 100644 e2e/results/hotfix/success/OK-company-info_2026-03-04_10-22-45.md create mode 100644 e2e/results/hotfix/success/OK-company-info_2026-03-04_22-56-12.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_15-41-12.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_21-38-14.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_22-38-26.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_10-23-23.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_22-56-51.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_15-41-48.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_21-38-50.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_22-39-02.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_10-23-59.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_22-57-27.md rename e2e/results/hotfix/{Fail-create-delete-board_2026-02-27_16-03-38.md => success/OK-create-delete-board_2026-03-03_15-42-30.md} (52%) create mode 100644 e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_21-39-32.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_22-39-44.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_10-24-41.md create mode 100644 e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_22-58-09.md create mode 100644 e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_15-43-09.md create mode 100644 e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_21-40-11.md create mode 100644 e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_22-40-23.md create mode 100644 e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_10-25-21.md create mode 100644 e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_22-58-48.md create mode 100644 e2e/results/hotfix/success/OK-customer-event_2026-03-03_15-43-23.md create mode 100644 e2e/results/hotfix/success/OK-customer-event_2026-03-03_21-40-25.md create mode 100644 e2e/results/hotfix/success/OK-customer-event_2026-03-03_22-40-37.md create mode 100644 e2e/results/hotfix/success/OK-customer-event_2026-03-04_10-25-34.md create mode 100644 e2e/results/hotfix/success/OK-customer-event_2026-03-04_22-59-04.md create mode 100644 e2e/results/hotfix/success/OK-customer-faq_2026-03-03_15-43-34.md create mode 100644 e2e/results/hotfix/success/OK-customer-faq_2026-03-03_21-40-36.md create mode 100644 e2e/results/hotfix/success/OK-customer-faq_2026-03-03_22-40-48.md create mode 100644 e2e/results/hotfix/success/OK-customer-faq_2026-03-04_10-25-45.md create mode 100644 e2e/results/hotfix/success/OK-customer-faq_2026-03-04_22-59-17.md create mode 100644 e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_15-43-48.md create mode 100644 e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_21-40-51.md create mode 100644 e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_22-41-02.md create mode 100644 e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_10-26-00.md create mode 100644 e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_22-59-33.md create mode 100644 e2e/results/hotfix/success/OK-customer-notice_2026-03-03_15-44-02.md create mode 100644 e2e/results/hotfix/success/OK-customer-notice_2026-03-03_21-41-04.md create mode 100644 e2e/results/hotfix/success/OK-customer-notice_2026-03-03_22-41-16.md create mode 100644 e2e/results/hotfix/success/OK-customer-notice_2026-03-04_10-26-14.md create mode 100644 e2e/results/hotfix/success/OK-customer-notice_2026-03-04_22-59-49.md create mode 100644 e2e/results/hotfix/success/OK-department-add_2026-03-03_15-44-15.md create mode 100644 e2e/results/hotfix/success/OK-department-add_2026-03-03_21-41-17.md create mode 100644 e2e/results/hotfix/success/OK-department-add_2026-03-03_22-41-29.md create mode 100644 e2e/results/hotfix/success/OK-department-add_2026-03-04_10-26-27.md create mode 100644 e2e/results/hotfix/success/OK-department-add_2026-03-04_23-00-04.md create mode 100644 e2e/results/hotfix/success/OK-deposit-management_2026-03-03_15-44-31.md create mode 100644 e2e/results/hotfix/success/OK-deposit-management_2026-03-03_21-41-33.md create mode 100644 e2e/results/hotfix/success/OK-deposit-management_2026-03-03_22-41-45.md create mode 100644 e2e/results/hotfix/success/OK-deposit-management_2026-03-04_10-26-42.md create mode 100644 e2e/results/hotfix/success/OK-deposit-management_2026-03-04_23-00-20.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_15-45-04.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_21-42-06.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_22-42-17.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_10-27-15.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_23-00-52.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_15-45-29.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_21-42-32.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_22-42-43.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_10-27-41.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_23-01-18.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_15-46-02.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_21-43-04.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_22-43-16.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_10-28-13.md create mode 100644 e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_23-01-51.md create mode 100644 e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_15-46-25.md create mode 100644 e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_21-43-28.md create mode 100644 e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_22-43-39.md create mode 100644 e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_10-28-37.md create mode 100644 e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_23-02-14.md create mode 100644 e2e/results/hotfix/success/OK-draft-box_2026-03-03_14-42-04.md create mode 100644 e2e/results/hotfix/success/OK-draft-box_2026-03-03_15-46-37.md create mode 100644 e2e/results/hotfix/success/OK-draft-box_2026-03-03_21-43-39.md create mode 100644 e2e/results/hotfix/success/OK-draft-box_2026-03-03_22-43-51.md create mode 100644 e2e/results/hotfix/success/OK-draft-box_2026-03-04_10-28-49.md create mode 100644 e2e/results/hotfix/success/OK-draft-box_2026-03-04_23-02-27.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_15-47-01.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_21-44-03.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_22-44-15.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_10-29-12.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_23-02-51.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_15-47-24.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_21-44-26.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_22-44-38.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_10-29-36.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_23-03-14.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_15-47-48.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_21-44-50.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_22-45-01.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_10-29-59.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_23-03-37.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_15-48-11.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_21-45-13.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_22-45-25.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_10-30-22.md create mode 100644 e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_23-04-01.md create mode 100644 e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_15-48-25.md create mode 100644 e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_21-45-27.md create mode 100644 e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_22-45-39.md create mode 100644 e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_10-30-36.md create mode 100644 e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_23-04-15.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_15-48-44.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_21-45-46.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_22-45-58.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_10-30-55.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_23-04-34.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_15-49-03.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_21-46-05.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_22-46-17.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_10-31-14.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_23-04-53.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_15-49-22.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_21-46-25.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_22-46-36.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_10-31-34.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_23-05-12.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_15-49-41.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_21-46-44.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_22-46-55.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_10-31-53.md create mode 100644 e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_23-05-31.md create mode 100644 e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_15-50-05.md create mode 100644 e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_21-47-07.md create mode 100644 e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_22-47-19.md create mode 100644 e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_10-32-17.md create mode 100644 e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_23-05-55.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_15-50-32.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_21-47-35.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_22-47-46.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_10-32-44.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_23-06-22.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_15-50-48.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_21-47-51.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_22-48-02.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_10-33-00.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_23-06-38.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_15-51-08.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_21-48-11.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_22-48-22.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_10-33-20.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_23-06-58.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_15-51-28.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_21-48-31.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_22-48-42.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_10-33-39.md create mode 100644 e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_23-07-18.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-03_15-52-00.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-03_21-49-03.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-03_22-49-14.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-04_10-34-12.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-04_23-07-50.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-search_2026-03-03_15-52-32.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-search_2026-03-03_21-49-35.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-search_2026-03-03_22-49-46.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-search_2026-03-04_10-34-44.md create mode 100644 e2e/results/hotfix/success/OK-edge-special-chars-search_2026-03-04_23-08-22.md create mode 100644 e2e/results/hotfix/success/OK-edge-unicode-input-board_2026-03-03_15-52-53.md create mode 100644 e2e/results/hotfix/success/OK-edge-unicode-input-board_2026-03-03_21-49-55.md create mode 100644 e2e/results/hotfix/success/OK-edge-unicode-input-board_2026-03-03_22-50-07.md create mode 100644 e2e/results/hotfix/success/OK-edge-unicode-input-board_2026-03-04_10-35-04.md create mode 100644 e2e/results/hotfix/success/OK-edge-unicode-input-board_2026-03-04_23-08-43.md create mode 100644 e2e/results/hotfix/success/OK-employee-register_2026-03-03_15-53-24.md create mode 100644 e2e/results/hotfix/success/OK-employee-register_2026-03-03_21-50-26.md create mode 100644 e2e/results/hotfix/success/OK-employee-register_2026-03-03_22-50-38.md create mode 100644 e2e/results/hotfix/success/OK-employee-register_2026-03-04_10-35-35.md create mode 100644 e2e/results/hotfix/success/OK-employee-register_2026-03-04_23-09-14.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-acc_2026-03-03_15-54-07.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-acc_2026-03-03_21-51-09.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-acc_2026-03-03_22-51-21.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-acc_2026-03-04_10-36-18.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-acc_2026-03-04_23-09-57.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-misc_2026-03-03_15-54-32.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-misc_2026-03-03_21-51-35.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-misc_2026-03-03_22-51-46.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-misc_2026-03-04_10-36-43.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-misc_2026-03-04_23-10-22.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-sales_2026-03-03_15-55-16.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-sales_2026-03-03_21-52-18.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-sales_2026-03-03_22-52-30.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-sales_2026-03-04_10-37-27.md create mode 100644 e2e/results/hotfix/success/OK-form-validation-sales_2026-03-04_23-11-06.md create mode 100644 e2e/results/hotfix/success/OK-free-board_2026-03-03_15-55-29.md create mode 100644 e2e/results/hotfix/success/OK-free-board_2026-03-03_21-52-31.md create mode 100644 e2e/results/hotfix/success/OK-free-board_2026-03-03_22-52-43.md create mode 100644 e2e/results/hotfix/success/OK-free-board_2026-03-04_10-37-40.md create mode 100644 e2e/results/hotfix/success/OK-free-board_2026-03-04_23-11-19.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-bills_2026-03-03_15-56-26.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-bills_2026-03-03_21-53-28.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-bills_2026-03-03_22-53-40.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-bills_2026-03-04_10-38-37.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-bills_2026-03-04_23-12-16.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-deposit_2026-03-03_15-57-22.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-deposit_2026-03-03_21-54-24.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-deposit_2026-03-03_22-54-36.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-deposit_2026-03-04_10-39-33.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-deposit_2026-03-04_23-13-12.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-sales_2026-03-03_15-58-17.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-sales_2026-03-03_21-55-19.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-sales_2026-03-03_22-55-32.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-sales_2026-03-04_10-40-28.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-acc-sales_2026-03-04_23-14-07.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-board_2026-03-03_15-59-21.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-board_2026-03-03_21-56-23.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-board_2026-03-03_22-56-36.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-board_2026-03-04_10-41-32.md create mode 100644 e2e/results/hotfix/success/OK-full-crud-board_2026-03-04_23-15-11.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-admin_2026-03-03_14-58-17.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-admin_2026-03-03_15-59-31.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-admin_2026-03-03_21-56-34.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-admin_2026-03-03_22-56-46.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-admin_2026-03-04_10-41-43.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-admin_2026-03-04_23-15-21.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-status_2026-03-03_14-58-28.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-status_2026-03-03_15-59-43.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-status_2026-03-03_21-56-46.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-status_2026-03-03_22-56-58.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-status_2026-03-04_10-41-54.md create mode 100644 e2e/results/hotfix/success/OK-hr-attendance-status_2026-03-04_23-15-33.md create mode 100644 e2e/results/hotfix/success/OK-hr-department_2026-03-03_15-59-53.md create mode 100644 e2e/results/hotfix/success/OK-hr-department_2026-03-03_21-56-56.md create mode 100644 e2e/results/hotfix/success/OK-hr-department_2026-03-03_22-57-08.md create mode 100644 e2e/results/hotfix/success/OK-hr-department_2026-03-04_10-42-04.md create mode 100644 e2e/results/hotfix/success/OK-hr-department_2026-03-04_23-15-43.md create mode 100644 e2e/results/hotfix/success/OK-hr-employee_2026-03-03_16-00-07.md create mode 100644 e2e/results/hotfix/success/OK-hr-employee_2026-03-03_21-57-09.md create mode 100644 e2e/results/hotfix/success/OK-hr-employee_2026-03-03_22-57-22.md create mode 100644 e2e/results/hotfix/success/OK-hr-employee_2026-03-04_10-42-18.md create mode 100644 e2e/results/hotfix/success/OK-hr-employee_2026-03-04_23-15-57.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary-long-term-care_2026-03-03_20-45-21.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary-long-term-care_2026-03-03_21-57-28.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary-long-term-care_2026-03-03_22-57-40.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary-long-term-care_2026-03-04_10-42-36.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary-long-term-care_2026-03-04_23-16-15.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary_2026-03-03_15-05-29.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary_2026-03-03_16-00-20.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary_2026-03-03_21-57-41.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary_2026-03-03_22-57-53.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary_2026-03-04_10-42-50.md create mode 100644 e2e/results/hotfix/success/OK-hr-salary_2026-03-04_23-16-28.md create mode 100644 e2e/results/hotfix/success/OK-hr-vacation_2026-03-03_14-54-50.md create mode 100644 e2e/results/hotfix/success/OK-hr-vacation_2026-03-03_16-00-39.md create mode 100644 e2e/results/hotfix/success/OK-hr-vacation_2026-03-03_21-58-00.md create mode 100644 e2e/results/hotfix/success/OK-hr-vacation_2026-03-03_22-58-12.md create mode 100644 e2e/results/hotfix/success/OK-hr-vacation_2026-03-04_10-43-08.md create mode 100644 e2e/results/hotfix/success/OK-hr-vacation_2026-03-04_23-16-50.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-1_2026-03-03_16-01-33.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-1_2026-03-03_21-58-54.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-1_2026-03-03_22-59-07.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-1_2026-03-04_10-44-03.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-1_2026-03-04_23-17-44.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-2_2026-03-03_16-02-35.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-2_2026-03-03_21-59-55.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-2_2026-03-03_23-00-09.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-2_2026-03-04_10-45-03.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-acc-2_2026-03-04_23-18-45.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-material-quality_2026-03-03_16-03-05.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-material-quality_2026-03-03_22-00-26.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-material-quality_2026-03-03_23-00-40.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-material-quality_2026-03-03_23-31-45.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-material-quality_2026-03-04_10-45-34.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-material-quality_2026-03-04_23-19-16.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-production_2026-03-03_16-03-26.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-production_2026-03-03_22-00-47.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-production_2026-03-03_23-01-01.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-production_2026-03-04_10-45-55.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-production_2026-03-04_23-19-36.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-sales_2026-03-03_16-04-08.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-sales_2026-03-03_22-01-28.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-sales_2026-03-03_23-01-43.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-sales_2026-03-04_10-46-36.md create mode 100644 e2e/results/hotfix/success/OK-input-fields-sales_2026-03-04_23-20-18.md create mode 100644 e2e/results/hotfix/success/OK-inventory-status_2026-03-03_16-04-18.md create mode 100644 e2e/results/hotfix/success/OK-inventory-status_2026-03-03_22-01-38.md create mode 100644 e2e/results/hotfix/success/OK-inventory-status_2026-03-03_23-01-53.md create mode 100644 e2e/results/hotfix/success/OK-inventory-status_2026-03-04_10-46-46.md create mode 100644 e2e/results/hotfix/success/OK-inventory-status_2026-03-04_23-20-28.md create mode 100644 e2e/results/hotfix/success/OK-item-management_2026-03-03_16-04-38.md create mode 100644 e2e/results/hotfix/success/OK-item-management_2026-03-03_22-01-59.md create mode 100644 e2e/results/hotfix/success/OK-item-management_2026-03-03_23-02-13.md create mode 100644 e2e/results/hotfix/success/OK-item-management_2026-03-04_10-47-07.md create mode 100644 e2e/results/hotfix/success/OK-item-management_2026-03-04_23-20-51.md create mode 100644 e2e/results/hotfix/success/OK-item-master_2026-03-03_16-04-49.md create mode 100644 e2e/results/hotfix/success/OK-item-master_2026-03-03_22-02-10.md create mode 100644 e2e/results/hotfix/success/OK-item-master_2026-03-03_23-02-24.md create mode 100644 e2e/results/hotfix/success/OK-item-master_2026-03-04_10-47-18.md create mode 100644 e2e/results/hotfix/success/OK-item-master_2026-03-04_23-21-02.md create mode 100644 e2e/results/hotfix/success/OK-login-test_2026-03-03_16-05-02.md create mode 100644 e2e/results/hotfix/success/OK-login-test_2026-03-03_22-02-23.md create mode 100644 e2e/results/hotfix/success/OK-login-test_2026-03-03_23-02-37.md create mode 100644 e2e/results/hotfix/success/OK-login-test_2026-03-04_10-47-31.md create mode 100644 e2e/results/hotfix/success/OK-login-test_2026-03-04_23-21-17.md create mode 100644 e2e/results/hotfix/success/OK-material-dispatch_2026-03-02_22-03-42.md create mode 100644 e2e/results/hotfix/success/OK-material-dispatch_2026-03-03_16-05-47.md create mode 100644 e2e/results/hotfix/success/OK-material-dispatch_2026-03-03_22-03-07.md create mode 100644 e2e/results/hotfix/success/OK-material-dispatch_2026-03-03_23-03-22.md create mode 100644 e2e/results/hotfix/success/OK-material-dispatch_2026-03-04_10-48-15.md create mode 100644 e2e/results/hotfix/success/OK-material-dispatch_2026-03-04_23-22-02.md create mode 100644 e2e/results/hotfix/success/OK-material-receiving_2026-03-03_16-06-05.md create mode 100644 e2e/results/hotfix/success/OK-material-receiving_2026-03-03_22-03-25.md create mode 100644 e2e/results/hotfix/success/OK-material-receiving_2026-03-03_23-03-40.md create mode 100644 e2e/results/hotfix/success/OK-material-receiving_2026-03-04_10-48-33.md create mode 100644 e2e/results/hotfix/success/OK-material-receiving_2026-03-04_23-22-23.md create mode 100644 e2e/results/hotfix/success/OK-material-stock_2026-03-03_16-06-15.md create mode 100644 e2e/results/hotfix/success/OK-material-stock_2026-03-03_22-03-35.md create mode 100644 e2e/results/hotfix/success/OK-material-stock_2026-03-03_23-03-50.md create mode 100644 e2e/results/hotfix/success/OK-material-stock_2026-03-04_10-48-43.md create mode 100644 e2e/results/hotfix/success/OK-material-stock_2026-03-04_22-30-01.md create mode 100644 e2e/results/hotfix/success/OK-material-stock_2026-03-04_23-22-33.md create mode 100644 e2e/results/hotfix/success/OK-multi-item-acc-sales_2026-03-03_16-07-00.md create mode 100644 e2e/results/hotfix/success/OK-multi-item-acc-sales_2026-03-03_22-04-20.md create mode 100644 e2e/results/hotfix/success/OK-multi-item-acc-sales_2026-03-03_23-04-35.md create mode 100644 e2e/results/hotfix/success/OK-multi-item-acc-sales_2026-03-04_10-49-28.md create mode 100644 e2e/results/hotfix/success/OK-multi-item-acc-sales_2026-03-04_23-23-17.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-acc_2026-03-03_16-07-39.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-acc_2026-03-03_22-05-00.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-acc_2026-03-03_23-05-15.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-acc_2026-03-04_10-50-07.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-acc_2026-03-04_23-23-57.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-hr_2026-03-03_16-08-07.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-hr_2026-03-03_22-05-27.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-hr_2026-03-03_23-05-42.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-hr_2026-03-04_10-50-35.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-hr_2026-03-04_23-24-24.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-sales_2026-03-03_16-08-44.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-sales_2026-03-03_22-06-05.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-sales_2026-03-03_23-06-20.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-sales_2026-03-04_10-51-12.md create mode 100644 e2e/results/hotfix/success/OK-pagination-sort-sales_2026-03-04_23-25-02.md create mode 100644 e2e/results/hotfix/success/OK-pdf-download-test_2026-03-03_16-08-45.md create mode 100644 e2e/results/hotfix/success/OK-pdf-download-test_2026-03-03_22-06-06.md create mode 100644 e2e/results/hotfix/success/OK-pdf-download-test_2026-03-03_23-06-21.md create mode 100644 e2e/results/hotfix/success/OK-pdf-download-test_2026-03-04_10-51-13.md create mode 100644 e2e/results/hotfix/success/OK-pdf-download-test_2026-03-04_23-25-03.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-client_2026-03-03_16-08-54.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-client_2026-03-03_22-06-15.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-client_2026-03-03_23-06-30.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-client_2026-03-04_10-51-23.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-client_2026-03-04_23-25-12.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-deposit_2026-03-03_16-09-03.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-deposit_2026-03-03_22-06-24.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-deposit_2026-03-03_23-06-39.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-deposit_2026-03-04_10-51-32.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-deposit_2026-03-04_23-25-21.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-purchase_2026-03-03_16-09-12.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-purchase_2026-03-03_22-06-33.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-purchase_2026-03-03_23-06-49.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-purchase_2026-03-04_10-51-41.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-purchase_2026-03-04_23-25-30.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-sales_2026-03-03_16-09-21.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-sales_2026-03-03_22-06-42.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-sales_2026-03-03_23-06-58.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-sales_2026-03-04_10-51-50.md create mode 100644 e2e/results/hotfix/success/OK-perf-acc-sales_2026-03-04_23-25-39.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-attendance_2026-03-03_14-58-38.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-attendance_2026-03-03_16-09-30.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-attendance_2026-03-03_22-06-51.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-attendance_2026-03-03_23-07-07.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-attendance_2026-03-04_10-51-59.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-attendance_2026-03-04_23-25-49.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-department_2026-03-03_16-09-40.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-department_2026-03-03_22-07-00.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-department_2026-03-03_23-07-16.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-department_2026-03-04_10-52-08.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-department_2026-03-04_23-25-58.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-employee_2026-03-03_16-09-49.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-employee_2026-03-03_22-07-10.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-employee_2026-03-03_23-07-25.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-employee_2026-03-04_10-52-17.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-employee_2026-03-04_23-26-07.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-salary_2026-03-03_15-05-38.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-salary_2026-03-03_16-09-58.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-salary_2026-03-03_22-07-19.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-salary_2026-03-03_23-07-34.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-salary_2026-03-04_10-52-26.md create mode 100644 e2e/results/hotfix/success/OK-perf-hr-salary_2026-03-04_23-26-16.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-receiving_2026-03-03_16-10-07.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-receiving_2026-03-03_22-07-28.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-receiving_2026-03-03_23-07-43.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-receiving_2026-03-04_10-52-35.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-receiving_2026-03-04_23-26-25.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-stock_2026-03-03_16-10-16.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-stock_2026-03-03_22-07-37.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-stock_2026-03-03_23-07-52.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-stock_2026-03-04_10-52-44.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-stock_2026-03-04_22-30-10.md create mode 100644 e2e/results/hotfix/success/OK-perf-material-stock_2026-03-04_23-26-34.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-item_2026-03-03_16-10-25.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-item_2026-03-03_22-07-46.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-item_2026-03-03_23-08-02.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-item_2026-03-04_10-52-53.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-item_2026-03-04_23-26-43.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-order_2026-03-03_16-10-34.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-order_2026-03-03_22-07-55.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-order_2026-03-03_23-08-11.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-order_2026-03-04_10-53-02.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-order_2026-03-04_23-26-52.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-result_2026-03-03_16-10-43.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-result_2026-03-03_22-08-04.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-result_2026-03-03_23-08-20.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-result_2026-03-04_10-53-12.md create mode 100644 e2e/results/hotfix/success/OK-perf-prod-work-result_2026-03-04_23-27-01.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-client_2026-03-03_16-10-52.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-client_2026-03-03_22-08-13.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-client_2026-03-03_23-08-29.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-client_2026-03-04_10-53-21.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-client_2026-03-04_23-27-10.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-estimate_2026-03-03_16-11-01.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-estimate_2026-03-03_22-08-22.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-estimate_2026-03-03_23-08-38.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-estimate_2026-03-04_10-53-30.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-estimate_2026-03-04_23-27-19.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-order_2026-03-03_16-11-10.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-order_2026-03-03_22-08-31.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-order_2026-03-03_23-08-47.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-order_2026-03-04_10-53-39.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-order_2026-03-04_23-27-29.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-price_2026-03-03_16-11-19.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-price_2026-03-03_22-08-40.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-price_2026-03-03_23-08-56.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-price_2026-03-04_10-53-48.md create mode 100644 e2e/results/hotfix/success/OK-perf-sales-price_2026-03-04_23-27-38.md create mode 100644 e2e/results/hotfix/success/OK-production-dashboard_2026-03-03_16-11-31.md create mode 100644 e2e/results/hotfix/success/OK-production-dashboard_2026-03-03_22-08-52.md create mode 100644 e2e/results/hotfix/success/OK-production-dashboard_2026-03-03_23-09-09.md create mode 100644 e2e/results/hotfix/success/OK-production-dashboard_2026-03-04_10-54-00.md create mode 100644 e2e/results/hotfix/success/OK-production-dashboard_2026-03-04_23-27-51.md create mode 100644 e2e/results/hotfix/success/OK-production-item_2026-03-03_16-11-42.md create mode 100644 e2e/results/hotfix/success/OK-production-item_2026-03-03_22-09-03.md create mode 100644 e2e/results/hotfix/success/OK-production-item_2026-03-03_23-09-19.md create mode 100644 e2e/results/hotfix/success/OK-production-item_2026-03-04_10-54-11.md create mode 100644 e2e/results/hotfix/success/OK-production-item_2026-03-04_23-28-02.md create mode 100644 e2e/results/hotfix/success/OK-production-work-order_2026-03-03_16-12-24.md create mode 100644 e2e/results/hotfix/success/OK-production-work-order_2026-03-03_22-09-45.md create mode 100644 e2e/results/hotfix/success/OK-production-work-order_2026-03-03_23-10-01.md create mode 100644 e2e/results/hotfix/success/OK-production-work-order_2026-03-04_10-54-52.md create mode 100644 e2e/results/hotfix/success/OK-production-work-order_2026-03-04_23-28-44.md create mode 100644 e2e/results/hotfix/success/OK-production-work-result_2026-03-03_16-12-40.md create mode 100644 e2e/results/hotfix/success/OK-production-work-result_2026-03-03_22-10-01.md create mode 100644 e2e/results/hotfix/success/OK-production-work-result_2026-03-03_23-10-18.md create mode 100644 e2e/results/hotfix/success/OK-production-work-result_2026-03-04_10-55-09.md create mode 100644 e2e/results/hotfix/success/OK-production-work-result_2026-03-04_23-29-02.md create mode 100644 e2e/results/hotfix/success/OK-production-worker_2026-03-03_16-12-51.md create mode 100644 e2e/results/hotfix/success/OK-production-worker_2026-03-03_22-10-12.md create mode 100644 e2e/results/hotfix/success/OK-production-worker_2026-03-03_23-10-28.md create mode 100644 e2e/results/hotfix/success/OK-production-worker_2026-03-04_10-55-19.md create mode 100644 e2e/results/hotfix/success/OK-production-worker_2026-03-04_23-29-13.md create mode 100644 e2e/results/hotfix/success/OK-purchase-order_2026-03-03_16-13-05.md create mode 100644 e2e/results/hotfix/success/OK-purchase-order_2026-03-03_22-10-26.md create mode 100644 e2e/results/hotfix/success/OK-purchase-order_2026-03-03_23-10-42.md create mode 100644 e2e/results/hotfix/success/OK-purchase-order_2026-03-04_10-55-33.md create mode 100644 e2e/results/hotfix/success/OK-purchase-order_2026-03-04_23-29-28.md create mode 100644 e2e/results/hotfix/success/OK-purchase-price_2026-03-03_16-13-25.md create mode 100644 e2e/results/hotfix/success/OK-purchase-price_2026-03-03_22-10-46.md create mode 100644 e2e/results/hotfix/success/OK-purchase-price_2026-03-03_23-11-03.md create mode 100644 e2e/results/hotfix/success/OK-purchase-price_2026-03-04_10-55-54.md create mode 100644 e2e/results/hotfix/success/OK-purchase-price_2026-03-04_23-29-50.md create mode 100644 e2e/results/hotfix/success/OK-purchase-status_2026-03-03_16-13-38.md create mode 100644 e2e/results/hotfix/success/OK-purchase-status_2026-03-03_22-10-59.md create mode 100644 e2e/results/hotfix/success/OK-purchase-status_2026-03-03_23-11-15.md create mode 100644 e2e/results/hotfix/success/OK-purchase-status_2026-03-04_10-56-06.md create mode 100644 e2e/results/hotfix/success/OK-purchase-status_2026-03-04_23-30-03.md create mode 100644 e2e/results/hotfix/success/OK-purchase-vendor_2026-03-03_16-13-52.md create mode 100644 e2e/results/hotfix/success/OK-purchase-vendor_2026-03-03_22-11-13.md create mode 100644 e2e/results/hotfix/success/OK-purchase-vendor_2026-03-03_23-11-29.md create mode 100644 e2e/results/hotfix/success/OK-purchase-vendor_2026-03-04_10-56-20.md create mode 100644 e2e/results/hotfix/success/OK-purchase-vendor_2026-03-04_23-30-18.md create mode 100644 e2e/results/hotfix/success/OK-quality-certification_2026-03-03_16-14-01.md create mode 100644 e2e/results/hotfix/success/OK-quality-certification_2026-03-03_22-11-22.md create mode 100644 e2e/results/hotfix/success/OK-quality-certification_2026-03-03_23-11-39.md create mode 100644 e2e/results/hotfix/success/OK-quality-certification_2026-03-03_23-31-55.md create mode 100644 e2e/results/hotfix/success/OK-quality-certification_2026-03-04_10-56-30.md create mode 100644 e2e/results/hotfix/success/OK-quality-certification_2026-03-04_23-30-28.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-03_16-14-19.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-03_22-11-40.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-03_22-17-45.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-03_23-11-53.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-03_23-32-07.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-04_10-56-42.md create mode 100644 e2e/results/hotfix/success/OK-quality-inspection_2026-03-04_23-30-40.md create mode 100644 e2e/results/hotfix/success/OK-quality-performance-report_2026-03-03_16-14-29.md create mode 100644 e2e/results/hotfix/success/OK-quality-performance-report_2026-03-03_22-11-50.md create mode 100644 e2e/results/hotfix/success/OK-quality-performance-report_2026-03-03_23-12-04.md create mode 100644 e2e/results/hotfix/success/OK-quality-performance-report_2026-03-03_23-32-16.md create mode 100644 e2e/results/hotfix/success/OK-quality-performance-report_2026-03-04_10-56-52.md create mode 100644 e2e/results/hotfix/success/OK-quality-performance-report_2026-03-04_23-30-49.md create mode 100644 e2e/results/hotfix/success/OK-receiving-management_2026-03-03_16-14-39.md create mode 100644 e2e/results/hotfix/success/OK-receiving-management_2026-03-03_22-12-00.md create mode 100644 e2e/results/hotfix/success/OK-receiving-management_2026-03-03_23-12-13.md create mode 100644 e2e/results/hotfix/success/OK-receiving-management_2026-03-04_10-57-02.md create mode 100644 e2e/results/hotfix/success/OK-receiving-management_2026-03-04_23-30-59.md create mode 100644 e2e/results/hotfix/success/OK-reference-box_2026-03-03_14-45-29.md create mode 100644 e2e/results/hotfix/success/OK-reference-box_2026-03-03_16-15-07.md create mode 100644 e2e/results/hotfix/success/OK-reference-box_2026-03-03_22-12-28.md create mode 100644 e2e/results/hotfix/success/OK-reference-box_2026-03-03_23-12-41.md create mode 100644 e2e/results/hotfix/success/OK-reference-box_2026-03-04_10-57-29.md create mode 100644 e2e/results/hotfix/success/OK-reference-box_2026-03-04_23-31-28.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-bills_2026-03-03_16-15-53.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-bills_2026-03-03_22-13-13.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-bills_2026-03-03_23-13-27.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-bills_2026-03-04_10-58-15.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-bills_2026-03-04_23-32-14.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-deposit_2026-03-03_16-16-44.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-deposit_2026-03-03_23-14-18.md rename e2e/results/hotfix/{Fail-reload-persist-acc-deposit_2026-02-27_16-06-30.md => success/OK-reload-persist-acc-deposit_2026-03-04_10-59-07.md} (57%) create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-deposit_2026-03-04_23-33-06.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-sales_2026-03-03_16-17-34.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-sales_2026-03-03_23-15-08.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-sales_2026-03-04_10-59-56.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-acc-sales_2026-03-04_23-33-55.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-board_2026-03-03_16-18-30.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-board_2026-03-03_23-16-04.md create mode 100644 e2e/results/hotfix/success/OK-reload-persist-board_2026-03-04_11-00-52.md rename e2e/results/hotfix/{Fail-reload-persist-board_2026-02-27_16-07-23.md => success/OK-reload-persist-board_2026-03-04_23-34-51.md} (59%) create mode 100644 e2e/results/hotfix/success/OK-sales-client_2026-03-03_16-18-49.md create mode 100644 e2e/results/hotfix/success/OK-sales-client_2026-03-03_23-16-23.md create mode 100644 e2e/results/hotfix/success/OK-sales-client_2026-03-04_11-01-11.md create mode 100644 e2e/results/hotfix/success/OK-sales-client_2026-03-04_23-35-11.md create mode 100644 e2e/results/hotfix/success/OK-sales-management_2026-03-03_16-19-51.md create mode 100644 e2e/results/hotfix/success/OK-sales-management_2026-03-03_23-17-26.md create mode 100644 e2e/results/hotfix/success/OK-sales-management_2026-03-04_11-02-13.md create mode 100644 e2e/results/hotfix/success/OK-sales-management_2026-03-04_23-36-13.md create mode 100644 e2e/results/hotfix/success/OK-sales-order-bulk-delete_2026-03-03_20-38-56.md create mode 100644 e2e/results/hotfix/success/OK-sales-order-bulk-delete_2026-03-03_23-18-06.md create mode 100644 e2e/results/hotfix/success/OK-sales-order-bulk-delete_2026-03-04_11-02-53.md create mode 100644 e2e/results/hotfix/success/OK-sales-order-bulk-delete_2026-03-04_23-36-53.md create mode 100644 e2e/results/hotfix/success/OK-sales-order_2026-03-03_16-20-40.md create mode 100644 e2e/results/hotfix/success/OK-sales-order_2026-03-03_23-18-54.md create mode 100644 e2e/results/hotfix/success/OK-sales-order_2026-03-04_11-03-41.md create mode 100644 e2e/results/hotfix/success/OK-sales-order_2026-03-04_23-37-41.md create mode 100644 e2e/results/hotfix/success/OK-sales-pricing_2026-03-03_16-20-54.md create mode 100644 e2e/results/hotfix/success/OK-sales-pricing_2026-03-03_23-19-09.md create mode 100644 e2e/results/hotfix/success/OK-sales-pricing_2026-03-04_11-03-56.md create mode 100644 e2e/results/hotfix/success/OK-sales-pricing_2026-03-04_23-37-56.md create mode 100644 e2e/results/hotfix/success/OK-sales-quotation_2026-03-03_16-21-39.md create mode 100644 e2e/results/hotfix/success/OK-sales-quotation_2026-03-03_23-19-54.md create mode 100644 e2e/results/hotfix/success/OK-sales-quotation_2026-03-04_11-04-41.md create mode 100644 e2e/results/hotfix/success/OK-sales-quotation_2026-03-04_23-38-42.md create mode 100644 e2e/results/hotfix/success/OK-sales-site-mgmt_2026-03-03_16-21-53.md create mode 100644 e2e/results/hotfix/success/OK-sales-site-mgmt_2026-03-03_23-20-08.md create mode 100644 e2e/results/hotfix/success/OK-sales-site-mgmt_2026-03-04_11-04-55.md create mode 100644 e2e/results/hotfix/success/OK-sales-site-mgmt_2026-03-04_23-38-57.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-draft_2026-03-03_16-22-19.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-draft_2026-03-03_23-20-33.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-draft_2026-03-04_11-05-20.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-draft_2026-03-04_23-39-22.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-salary_2026-03-03_16-22-46.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-salary_2026-03-03_23-21-01.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-salary_2026-03-04_11-05-47.md create mode 100644 e2e/results/hotfix/success/OK-search-bug-salary_2026-03-04_23-39-49.md create mode 100644 e2e/results/hotfix/success/OK-search-filter-acc-sales_2026-03-03_16-23-18.md create mode 100644 e2e/results/hotfix/success/OK-search-filter-acc-sales_2026-03-03_23-21-33.md create mode 100644 e2e/results/hotfix/success/OK-search-filter-acc-sales_2026-03-04_11-06-20.md create mode 100644 e2e/results/hotfix/success/OK-search-filter-acc-sales_2026-03-04_23-40-22.md create mode 100644 e2e/results/hotfix/success/OK-search-function-acc_2026-03-03_16-24-11.md create mode 100644 e2e/results/hotfix/success/OK-search-function-acc_2026-03-03_23-22-26.md create mode 100644 e2e/results/hotfix/success/OK-search-function-acc_2026-03-04_11-07-12.md create mode 100644 e2e/results/hotfix/success/OK-search-function-acc_2026-03-04_23-41-14.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc1_2026-03-03_16-24-55.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc1_2026-03-03_23-23-10.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc1_2026-03-04_11-07-56.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc1_2026-03-04_23-41-58.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc2-hr_2026-03-03_16-25-31.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc2-hr_2026-03-03_23-23-47.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc2-hr_2026-03-04_11-08-32.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-acc2-hr_2026-03-04_23-42-35.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-boards_2026-03-03_16-26-08.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-boards_2026-03-03_23-24-24.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-boards_2026-03-04_11-09-09.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-boards_2026-03-04_23-43-11.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-production_2026-03-03_16-26-38.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-production_2026-03-03_23-24-54.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-production_2026-03-04_11-09-39.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-production_2026-03-04_23-43-42.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-sales-approval_2026-03-03_16-27-16.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-sales-approval_2026-03-03_23-25-32.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-sales-approval_2026-03-04_11-10-17.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-sales-approval_2026-03-04_23-44-19.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-settings_2026-03-03_16-27-40.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-settings_2026-03-03_23-25-56.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-settings_2026-03-04_11-10-41.md create mode 100644 e2e/results/hotfix/success/OK-search-function-audit-settings_2026-03-04_23-44-43.md create mode 100644 e2e/results/hotfix/success/OK-search-function-hr-board_2026-03-03_16-28-19.md create mode 100644 e2e/results/hotfix/success/OK-search-function-hr-board_2026-03-03_23-26-36.md create mode 100644 e2e/results/hotfix/success/OK-search-function-hr-board_2026-03-04_11-11-21.md create mode 100644 e2e/results/hotfix/success/OK-search-function-hr-board_2026-03-04_23-45-23.md create mode 100644 e2e/results/hotfix/success/OK-search-function-sales_2026-03-03_16-29-00.md create mode 100644 e2e/results/hotfix/success/OK-search-function-sales_2026-03-03_23-27-17.md create mode 100644 e2e/results/hotfix/success/OK-search-function-sales_2026-03-04_11-12-02.md create mode 100644 e2e/results/hotfix/success/OK-search-function-sales_2026-03-04_23-46-04.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-1_2026-03-03_16-30-31.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-1_2026-03-03_23-28-49.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-1_2026-03-04_11-13-33.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-1_2026-03-04_23-47-35.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-2_2026-03-03_16-31-57.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-2_2026-03-03_23-30-14.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-2_2026-03-04_11-14-58.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-2_2026-03-04_23-49-00.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-3_2026-03-03_16-33-44.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-3_2026-03-03_23-32-11.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-3_2026-03-04_11-16-45.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-3_2026-03-04_23-50-56.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-4_2026-03-03_16-34-34.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-4_2026-03-03_23-33-02.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-4_2026-03-04_11-17-35.md create mode 100644 e2e/results/hotfix/success/OK-search-options-acc-4_2026-03-04_23-51-47.md create mode 100644 e2e/results/hotfix/success/OK-search-options-approval_2026-03-03_16-35-49.md create mode 100644 e2e/results/hotfix/success/OK-search-options-approval_2026-03-03_23-34-17.md create mode 100644 e2e/results/hotfix/success/OK-search-options-approval_2026-03-04_11-18-50.md create mode 100644 e2e/results/hotfix/success/OK-search-options-approval_2026-03-04_23-53-02.md create mode 100644 e2e/results/hotfix/success/OK-search-options-boards-customer_2026-03-03_16-37-14.md create mode 100644 e2e/results/hotfix/success/OK-search-options-boards-customer_2026-03-03_23-35-42.md create mode 100644 e2e/results/hotfix/success/OK-search-options-boards-customer_2026-03-04_11-20-15.md create mode 100644 e2e/results/hotfix/success/OK-search-options-boards-customer_2026-03-04_23-54-27.md create mode 100644 e2e/results/hotfix/success/OK-search-options-hr_2026-03-03_16-39-01.md create mode 100644 e2e/results/hotfix/success/OK-search-options-hr_2026-03-03_23-37-30.md create mode 100644 e2e/results/hotfix/success/OK-search-options-hr_2026-03-04_11-22-02.md create mode 100644 e2e/results/hotfix/success/OK-search-options-hr_2026-03-04_23-56-14.md create mode 100644 e2e/results/hotfix/success/OK-search-options-production_2026-03-03_16-39-51.md create mode 100644 e2e/results/hotfix/success/OK-search-options-production_2026-03-03_23-38-20.md create mode 100644 e2e/results/hotfix/success/OK-search-options-production_2026-03-04_11-22-51.md create mode 100644 e2e/results/hotfix/success/OK-search-options-production_2026-03-04_23-57-03.md create mode 100644 e2e/results/hotfix/success/OK-search-options-quality-material_2026-03-03_16-41-05.md create mode 100644 e2e/results/hotfix/success/OK-search-options-quality-material_2026-03-03_23-33-30.md create mode 100644 e2e/results/hotfix/success/OK-search-options-quality-material_2026-03-03_23-39-34.md create mode 100644 e2e/results/hotfix/success/OK-search-options-quality-material_2026-03-04_11-24-05.md create mode 100644 e2e/results/hotfix/success/OK-search-options-quality-material_2026-03-04_23-58-17.md create mode 100644 e2e/results/hotfix/success/OK-search-options-sales_2026-03-03_16-41-46.md create mode 100644 e2e/results/hotfix/success/OK-search-options-sales_2026-03-03_23-40-15.md create mode 100644 e2e/results/hotfix/success/OK-search-options-sales_2026-03-04_11-24-46.md create mode 100644 e2e/results/hotfix/success/OK-search-options-sales_2026-03-04_23-58-58.md create mode 100644 e2e/results/hotfix/success/OK-search-options-settings_2026-03-03_16-42-26.md create mode 100644 e2e/results/hotfix/success/OK-search-options-settings_2026-03-03_23-40-56.md create mode 100644 e2e/results/hotfix/success/OK-search-options-settings_2026-03-04_11-25-27.md create mode 100644 e2e/results/hotfix/success/OK-search-options-settings_2026-03-04_23-59-39.md create mode 100644 e2e/results/hotfix/success/OK-settings-account_2026-03-03_16-42-38.md create mode 100644 e2e/results/hotfix/success/OK-settings-account_2026-03-03_23-41-07.md create mode 100644 e2e/results/hotfix/success/OK-settings-account_2026-03-04_11-25-38.md create mode 100644 e2e/results/hotfix/success/OK-settings-account_2026-03-04_23-59-51.md create mode 100644 e2e/results/hotfix/success/OK-settings-attendance_2026-03-03_14-58-48.md create mode 100644 e2e/results/hotfix/success/OK-settings-attendance_2026-03-03_16-42-48.md create mode 100644 e2e/results/hotfix/success/OK-settings-attendance_2026-03-03_23-41-18.md create mode 100644 e2e/results/hotfix/success/OK-settings-attendance_2026-03-04_11-25-48.md create mode 100644 e2e/results/hotfix/success/OK-settings-attendance_2026-03-05_00-00-03.md create mode 100644 e2e/results/hotfix/success/OK-settings-bank-account_2026-03-03_15-02-06.md create mode 100644 e2e/results/hotfix/success/OK-settings-bank-account_2026-03-03_16-43-00.md create mode 100644 e2e/results/hotfix/success/OK-settings-bank-account_2026-03-03_23-41-30.md create mode 100644 e2e/results/hotfix/success/OK-settings-bank-account_2026-03-04_11-26-00.md create mode 100644 e2e/results/hotfix/success/OK-settings-bank-account_2026-03-05_00-00-16.md create mode 100644 e2e/results/hotfix/success/OK-settings-barobill_2026-03-03_15-11-47.md create mode 100644 e2e/results/hotfix/success/OK-settings-barobill_2026-03-03_16-43-12.md create mode 100644 e2e/results/hotfix/success/OK-settings-barobill_2026-03-03_23-41-42.md create mode 100644 e2e/results/hotfix/success/OK-settings-barobill_2026-03-04_11-26-12.md create mode 100644 e2e/results/hotfix/success/OK-settings-barobill_2026-03-05_00-00-29.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar-crud_2026-03-03_20-35-37.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar-crud_2026-03-03_23-42-26.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar-crud_2026-03-04_11-26-56.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar-crud_2026-03-05_00-01-14.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar_2026-03-03_15-08-36.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar_2026-03-03_16-43-22.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar_2026-03-03_23-42-37.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar_2026-03-04_11-27-07.md create mode 100644 e2e/results/hotfix/success/OK-settings-calendar_2026-03-05_00-01-26.md create mode 100644 e2e/results/hotfix/success/OK-settings-card_2026-03-02_21-52-17.md create mode 100644 e2e/results/hotfix/success/OK-settings-card_2026-03-03_14-48-25.md create mode 100644 e2e/results/hotfix/success/OK-settings-card_2026-03-03_16-43-36.md create mode 100644 e2e/results/hotfix/success/OK-settings-card_2026-03-03_23-42-51.md create mode 100644 e2e/results/hotfix/success/OK-settings-card_2026-03-04_11-27-21.md create mode 100644 e2e/results/hotfix/success/OK-settings-card_2026-03-05_00-01-40.md create mode 100644 e2e/results/hotfix/success/OK-settings-company_2026-03-03_16-43-49.md create mode 100644 e2e/results/hotfix/success/OK-settings-company_2026-03-03_23-43-04.md create mode 100644 e2e/results/hotfix/success/OK-settings-company_2026-03-04_11-27-34.md create mode 100644 e2e/results/hotfix/success/OK-settings-company_2026-03-05_00-01-55.md create mode 100644 e2e/results/hotfix/success/OK-settings-notification_2026-03-03_16-44-02.md create mode 100644 e2e/results/hotfix/success/OK-settings-notification_2026-03-03_23-43-17.md create mode 100644 e2e/results/hotfix/success/OK-settings-notification_2026-03-04_11-27-46.md create mode 100644 e2e/results/hotfix/success/OK-settings-notification_2026-03-05_00-02-09.md create mode 100644 e2e/results/hotfix/success/OK-settings-permission_2026-03-03_16-44-14.md create mode 100644 e2e/results/hotfix/success/OK-settings-permission_2026-03-03_23-43-30.md create mode 100644 e2e/results/hotfix/success/OK-settings-permission_2026-03-04_11-27-59.md create mode 100644 e2e/results/hotfix/success/OK-settings-permission_2026-03-05_00-02-22.md create mode 100644 e2e/results/hotfix/success/OK-settings-popup_2026-03-03_16-44-28.md create mode 100644 e2e/results/hotfix/success/OK-settings-popup_2026-03-03_23-43-44.md create mode 100644 e2e/results/hotfix/success/OK-settings-popup_2026-03-04_11-28-13.md create mode 100644 e2e/results/hotfix/success/OK-settings-popup_2026-03-05_00-02-37.md create mode 100644 e2e/results/hotfix/success/OK-settings-position_2026-03-03_16-44-39.md create mode 100644 e2e/results/hotfix/success/OK-settings-position_2026-03-03_23-43-55.md create mode 100644 e2e/results/hotfix/success/OK-settings-position_2026-03-04_11-28-24.md create mode 100644 e2e/results/hotfix/success/OK-settings-position_2026-03-05_00-02-49.md create mode 100644 e2e/results/hotfix/success/OK-settings-rank_2026-03-03_16-44-50.md create mode 100644 e2e/results/hotfix/success/OK-settings-rank_2026-03-03_23-44-06.md create mode 100644 e2e/results/hotfix/success/OK-settings-rank_2026-03-04_11-28-35.md create mode 100644 e2e/results/hotfix/success/OK-settings-rank_2026-03-05_00-03-00.md create mode 100644 e2e/results/hotfix/success/OK-settings-subscription_2026-03-03_16-45-03.md create mode 100644 e2e/results/hotfix/success/OK-settings-subscription_2026-03-03_23-44-18.md create mode 100644 e2e/results/hotfix/success/OK-settings-subscription_2026-03-04_11-28-47.md create mode 100644 e2e/results/hotfix/success/OK-settings-subscription_2026-03-05_00-03-15.md create mode 100644 e2e/results/hotfix/success/OK-settings-vacation-policy_2026-03-03_15-14-55.md create mode 100644 e2e/results/hotfix/success/OK-settings-vacation-policy_2026-03-03_16-45-12.md create mode 100644 e2e/results/hotfix/success/OK-settings-vacation-policy_2026-03-03_23-44-27.md create mode 100644 e2e/results/hotfix/success/OK-settings-vacation-policy_2026-03-04_11-28-56.md create mode 100644 e2e/results/hotfix/success/OK-settings-vacation-policy_2026-03-05_00-03-24.md create mode 100644 e2e/results/hotfix/success/OK-settings-work-schedule_2026-03-03_16-45-22.md create mode 100644 e2e/results/hotfix/success/OK-settings-work-schedule_2026-03-03_23-44-37.md create mode 100644 e2e/results/hotfix/success/OK-settings-work-schedule_2026-03-04_11-29-06.md create mode 100644 e2e/results/hotfix/success/OK-settings-work-schedule_2026-03-05_00-03-35.md create mode 100644 e2e/results/hotfix/success/OK-shipment-management_2026-03-03_16-45-40.md create mode 100644 e2e/results/hotfix/success/OK-shipment-management_2026-03-03_23-44-56.md create mode 100644 e2e/results/hotfix/success/OK-shipment-management_2026-03-04_11-29-25.md create mode 100644 e2e/results/hotfix/success/OK-shipment-management_2026-03-05_00-03-54.md create mode 100644 e2e/results/hotfix/success/OK-standard-checklist_2026-03-03_16-45-58.md create mode 100644 e2e/results/hotfix/success/OK-standard-checklist_2026-03-03_23-45-14.md create mode 100644 e2e/results/hotfix/success/OK-standard-checklist_2026-03-04_11-29-42.md create mode 100644 e2e/results/hotfix/success/OK-standard-checklist_2026-03-05_00-04-13.md create mode 100644 e2e/results/hotfix/success/OK-standard-price-distribute_2026-03-03_16-46-15.md create mode 100644 e2e/results/hotfix/success/OK-standard-price-distribute_2026-03-04_11-30-00.md create mode 100644 e2e/results/hotfix/success/OK-standard-price-distribute_2026-03-05_00-04-32.md create mode 100644 e2e/results/hotfix/success/OK-standard-process-mgmt_2026-03-03_16-46-33.md create mode 100644 e2e/results/hotfix/success/OK-standard-process-mgmt_2026-03-04_11-30-18.md create mode 100644 e2e/results/hotfix/success/OK-standard-process-mgmt_2026-03-05_00-04-51.md create mode 100644 e2e/results/hotfix/success/OK-standard-unit-price_2026-03-03_16-46-51.md create mode 100644 e2e/results/hotfix/success/OK-standard-unit-price_2026-03-04_11-30-35.md create mode 100644 e2e/results/hotfix/success/OK-standard-unit-price_2026-03-05_00-05-11.md create mode 100644 e2e/results/hotfix/success/OK-system-dashboard_2026-03-02_21-55-32.md create mode 100644 e2e/results/hotfix/success/OK-system-dashboard_2026-03-03_16-47-02.md create mode 100644 e2e/results/hotfix/success/OK-system-dashboard_2026-03-04_11-30-46.md create mode 100644 e2e/results/hotfix/success/OK-system-dashboard_2026-03-05_00-05-22.md create mode 100644 e2e/results/hotfix/success/OK-test-bills-14steps_2026-03-03_16-48-03.md create mode 100644 e2e/results/hotfix/success/OK-test-bills-14steps_2026-03-04_11-31-48.md create mode 100644 e2e/results/hotfix/success/OK-test-bills-14steps_2026-03-05_00-06-24.md create mode 100644 e2e/results/hotfix/success/OK-test-bills-minimal_2026-03-03_16-48-11.md create mode 100644 e2e/results/hotfix/success/OK-test-bills-minimal_2026-03-04_11-31-55.md create mode 100644 e2e/results/hotfix/success/OK-test-bills-minimal_2026-03-05_00-06-31.md create mode 100644 e2e/results/hotfix/success/OK-vendor-ledger_2026-03-03_16-48-31.md create mode 100644 e2e/results/hotfix/success/OK-vendor-ledger_2026-03-04_11-32-15.md create mode 100644 e2e/results/hotfix/success/OK-vendor-ledger_2026-03-05_00-06-54.md create mode 100644 e2e/results/hotfix/success/OK-vendor-management_2026-03-03_16-49-17.md create mode 100644 e2e/results/hotfix/success/OK-vendor-management_2026-03-04_11-33-01.md create mode 100644 e2e/results/hotfix/success/OK-vendor-management_2026-03-05_00-07-40.md create mode 100644 e2e/results/hotfix/success/OK-withdrawal-management_2026-03-03_16-49-33.md create mode 100644 e2e/results/hotfix/success/OK-withdrawal-management_2026-03-04_11-33-17.md create mode 100644 e2e/results/hotfix/success/OK-withdrawal-management_2026-03-05_00-07-56.md create mode 100644 e2e/results/hotfix/success/OK-workflow-board-approval_2026-03-03_16-50-03.md create mode 100644 e2e/results/hotfix/success/OK-workflow-board-approval_2026-03-04_11-33-47.md create mode 100644 e2e/results/hotfix/success/OK-workflow-board-approval_2026-03-05_00-08-26.md create mode 100644 e2e/results/hotfix/success/OK-workflow-employee-onboarding_2026-03-03_16-50-41.md create mode 100644 e2e/results/hotfix/success/OK-workflow-employee-onboarding_2026-03-04_11-34-25.md create mode 100644 e2e/results/hotfix/success/OK-workflow-employee-onboarding_2026-03-05_00-09-03.md create mode 100644 e2e/results/hotfix/success/OK-workflow-inventory-cycle_2026-03-03_16-51-20.md create mode 100644 e2e/results/hotfix/success/OK-workflow-inventory-cycle_2026-03-04_11-35-04.md create mode 100644 e2e/results/hotfix/success/OK-workflow-inventory-cycle_2026-03-05_00-09-42.md create mode 100644 e2e/results/hotfix/success/OK-workflow-purchase-to-payment_2026-03-03_16-51-41.md create mode 100644 e2e/results/hotfix/success/OK-workflow-purchase-to-payment_2026-03-04_11-35-25.md create mode 100644 e2e/results/hotfix/success/OK-workflow-purchase-to-payment_2026-03-05_00-10-04.md create mode 100644 e2e/results/hotfix/success/OK-workflow-sales-lifecycle_2026-03-03_16-52-09.md create mode 100644 e2e/results/hotfix/success/OK-workflow-sales-lifecycle_2026-03-04_11-35-53.md create mode 100644 e2e/results/hotfix/success/OK-workflow-sales-lifecycle_2026-03-05_00-10-32.md delete mode 100644 e2e/results/hotfix/개발팀_Hotfix_버그수정_재요청_10차_2026-02-27.md diff --git a/e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.json b/e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.json new file mode 100644 index 0000000..5eafa44 --- /dev/null +++ b/e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.json @@ -0,0 +1,21833 @@ +[ + { + "url": "https://dev.codebridge-x.com/accounting/daily-report", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-699", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-663", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-644", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-597", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-531", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-465", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-399", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-333", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-267", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-201", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-135", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-69", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-3", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,63", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,129", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,195", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,261", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,327", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,339", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,371", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,383", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,415", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,427", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,459", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,471", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,503", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,547", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,591", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,635", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,679", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,723", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026-03-04", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "404,218", + "size": "140x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "새로고침", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1704,218", + "size": "89x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "엑셀", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1801,218", + "size": "68x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo", + "downloadRelated": true + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-644", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,339", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,383", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,427", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,471", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 2, + "inputCount": 0, + "tabCount": 3, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1801,218", + "size": "68x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 60, + "downloadRelated": 1, + "iconOnly": 21, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 일일 일보", + "expectedUrl": "/accounting/daily-report", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/bank-transactions", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-479", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-443", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-424", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-377", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-311", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-245", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-179", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-113", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-47", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,19", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,85", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,151", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,217", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,283", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,349", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,415", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,481", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,547", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,591", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,635", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,679", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,723", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1295", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026년 03월 01일 ~ 2026년 03월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "290x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "이번달", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "602,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "지난달", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "667,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-2월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "733,203", + "size": "61x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-3월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "798,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-4월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "864,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-5월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "930,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "저장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1539,203", + "size": "70x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1617,203", + "size": "123x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "입출금 수기 입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1748,203", + "size": "138x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1474,395", + "size": "32x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now", + "svgPathCount": 4 + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1514,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1642,393", + "size": "140x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,395", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,514", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,570", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,626", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,682", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,738", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,794", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,850", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,1004", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,1004", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,1004", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-424", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1474,395", + "size": "32x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now", + "svgPathCount": 4 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 22, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1617,203", + "size": "123x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 89, + "downloadRelated": 1, + "iconOnly": 22, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 계좌입출금내역", + "expectedUrl": "/accounting/bank-transactions", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/card-transactions", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-523", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-487", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-468", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-421", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-355", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-289", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-223", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-157", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-91", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-25", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,41", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,107", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,173", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,239", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,305", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,371", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,437", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,503", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,547", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,591", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,635", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,679", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,723", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026년 03월 01일 ~ 2026년 03월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "290x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "이번달", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "602,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "지난달", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "667,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-2월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "733,203", + "size": "61x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-3월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "798,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-4월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "864,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "D-5월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "930,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김 데이터 보기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1380,203", + "size": "139x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "저장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1527,203", + "size": "70x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1605,203", + "size": "123x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "카드사용 수기 입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1736,203", + "size": "150x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1504,395", + "size": "32x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now", + "svgPathCount": 4 + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1544,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1672,393", + "size": "110x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,395", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,514", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "불공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,504", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "선택", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,504", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,508", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,508", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,570", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,560", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "매입대금", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,560", + "size": "91x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,564", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,564", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,626", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,616", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "경비", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,616", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,620", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,620", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,682", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "불공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,672", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "임대료", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,672", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,676", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,676", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,738", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,728", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "급여", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,728", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,732", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,732", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,794", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,784", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "4대보험", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,784", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,788", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,788", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,850", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "불공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,840", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "공과금", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,840", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,844", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,844", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,906", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,896", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "선택", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,896", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,900", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,900", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,962", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,952", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "매입대금", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,952", + "size": "91x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,956", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,956", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1018", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "불공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,1008", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "경비", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,1008", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,1012", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,1012", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1074", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,1064", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "임대료", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,1064", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,1068", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,1068", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1130", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,1120", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "급여", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,1120", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,1124", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,1124", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1186", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "불공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,1176", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "4대보험", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,1176", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,1180", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,1180", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1242", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,1232", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "공과금", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,1232", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,1236", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,1236", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1298", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "공제", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "838,1288", + "size": "88x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "선택", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1640,1288", + "size": "90x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1746,1292", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "숨김", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1805,1292", + "size": "68x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,1416", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,1416", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,1416", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-468", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1504,395", + "size": "32x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now", + "svgPathCount": 4 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 61, + "tabCount": 68, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1605,203", + "size": "123x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 166, + "downloadRelated": 1, + "iconOnly": 22, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 카드사용내역", + "expectedUrl": "/accounting/card-transactions", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/tax-invoices", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-39", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-3", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,16", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,63", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,129", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,195", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,261", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,327", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,393", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,459", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,525", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,591", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,657", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,723", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,789", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,855", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,921", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1295", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1339", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1383", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1427", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1471", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1515", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1527", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1559", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1571", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1603", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1615", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1647", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1659", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1691", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1703", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1735", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1747", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "작성일자", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "321,250", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "2026년 01월 01일 ~ 2026년 03월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "449,252", + "size": "287x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "1분기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "744,252", + "size": "54x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "2분기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "802,252", + "size": "58x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "3분기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "864,252", + "size": "58x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "4분기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "927,252", + "size": "58x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "조회", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "993,252", + "size": "48x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "매출 3", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "307,470", + "size": "54x29", + "tag": "BUTTON", + "classes": "data-[state=active]:bg-card dark:data-[state=active]:text-fo" + }, + { + "text": "매입 3", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "361,470", + "size": "54x29", + "tag": "BUTTON", + "classes": "data-[state=active]:bg-card dark:data-[state=active]:text-fo" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1657,468", + "size": "123x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "수기 입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1788,468", + "size": "98x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,559", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1802,669", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1802,725", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "분개", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1802,781", + "size": "38x28", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,905", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,905", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,905", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,16", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1527", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1571", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1615", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1659", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1703", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1747", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "매출 3", + "role": "tab", + "tag": "BUTTON" + }, + { + "text": "매입 3", + "role": "tab", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 8, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1657,468", + "size": "123x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 75, + "downloadRelated": 1, + "iconOnly": 21, + "toolbarActions": 1, + "dropdownItems": 17, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 세금계산서관리", + "expectedUrl": "/accounting/tax-invoices", + "tabSurveys": [ + { + "tabName": "매출 3", + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "visible": true + } + ] + }, + { + "tabName": "매입 3", + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "visible": true + } + ] + } + ], + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/receivables-status", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-567", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-531", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-512", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-465", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-399", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-333", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-267", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-201", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-135", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-69", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-3", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,63", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,129", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,195", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,261", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,327", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,393", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,459", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,471", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,503", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,547", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,591", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,635", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,679", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,723", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "최근 1년", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "353,218", + "size": "100x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "연체 업체 우선", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "501,218", + "size": "129x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "새로고침", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1552,220", + "size": "100x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1660,220", + "size": "127x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "저장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1795,220", + "size": "74x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,537", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,682", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,752", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,896", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,966", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1111", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,1181", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1325", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,1395", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1539", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,1609", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1754", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,1824", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1968", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,2038", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2183", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,2253", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2397", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,2487", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2631", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,2721", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2866", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,2956", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3100", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,3190", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3334", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,3424", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3569", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,3659", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3803", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,3893", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4038", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,4128", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4272", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,4362", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4506", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,4596", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4741", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,4831", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4975", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,5065", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5210", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,5300", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5444", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,5534", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5678", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,5768", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5913", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,6003", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6147", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,6237", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6382", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,6472", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6616", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,6706", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6850", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,6940", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7085", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,7175", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7319", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,7409", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7554", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,7644", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7788", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,7878", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8022", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,8112", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8257", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,8347", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8491", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,8581", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8726", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,8816", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8960", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,9050", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9194", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,9284", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9429", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,9519", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9663", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,9753", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9898", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,9988", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10132", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,10222", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10366", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,10456", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10601", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,10691", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10835", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,10925", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11070", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,11160", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11304", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,11394", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11538", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,11628", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11773", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,11863", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12007", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,12097", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12242", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,12332", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12476", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,12566", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12710", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,12800", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12945", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,13035", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13179", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,13269", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13414", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,13504", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13648", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,13738", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13882", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,13972", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14117", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,14207", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14351", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,14441", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14585", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,14675", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14820", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,14910", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,15054", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,15144", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,15289", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "337,15379", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,15523", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-512", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,471", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,559", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,682", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,896", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1111", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1325", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1539", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1754", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,1968", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2183", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2397", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2631", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,2866", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3100", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3334", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3569", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,3803", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4038", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4272", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4506", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4741", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,4975", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5210", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5444", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5678", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,5913", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6147", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6382", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6616", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,6850", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7085", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7319", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7554", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,7788", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8022", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8257", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8491", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8726", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,8960", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9194", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9429", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9663", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,9898", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10132", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10366", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10601", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,10835", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11070", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11304", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11538", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,11773", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12007", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12242", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12476", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12710", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,12945", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13179", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13414", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13648", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,13882", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14117", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14351", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14585", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,14820", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,15054", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,15289", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "571,15523", + "size": "20x20", + "tag": "BUTTON", + "classes": "p-0.5 hover:bg-gray-200 rounded", + "svgPathCount": 1 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 264, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1660,220", + "size": "127x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 257, + "downloadRelated": 1, + "iconOnly": 86, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 미수금현황", + "expectedUrl": "/accounting/receivables-status", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/vendor-ledger", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-215", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-179", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-160", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-113", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-47", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,19", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,85", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,151", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,217", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,283", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,349", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,415", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,481", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,547", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,613", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,679", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,745", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1295", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1339", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1383", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1427", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1471", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1515", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1527", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1559", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1571", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026년 03월 01일 ~ 2026년 03월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "290x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "오늘", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "602,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "어제", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "655,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "709,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "762,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "816,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당해년도", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "882,203", + "size": "74x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1759,203", + "size": "127x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,393", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "더 보기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,462", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,510", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,566", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,622", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,678", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,734", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,790", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,846", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,902", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,958", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1014", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1070", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1126", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1182", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1238", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1294", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1350", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1406", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1462", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1518", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1574", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1615,1696", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1672,1696", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "2", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1712,1696", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "3", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1752,1696", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "4", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,1696", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,1696", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-160", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1527", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1571", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 46, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1759,203", + "size": "127x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 114, + "downloadRelated": 1, + "iconOnly": 21, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 거래처원장", + "expectedUrl": "/accounting/vendor-ledger", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/material/stock-status", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,126", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,162", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,228", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,294", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,360", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,426", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,492", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,558", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,624", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,690", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,756", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,822", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,888", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,954", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "재고현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1020", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1032", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1064", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1076", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1110", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1176", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "2026년 03월 01일 ~ 2026년 03월 04일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "292x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "오늘", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "604,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "어제", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "658,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "711,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "765,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "818,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당해년도", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "884,203", + "size": "74x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1765,203", + "size": "121x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1406,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1534,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1662,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,395", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "필터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1771,684", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,684", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1032", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1076", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 9, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1765,203", + "size": "121x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 41, + "downloadRelated": 1, + "iconOnly": 5, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "자재관리 > 재고현황", + "expectedUrl": "/material/stock-status", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/production/work-results", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,126", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,162", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,228", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,294", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,360", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,426", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,492", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,558", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,624", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,690", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,756", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,822", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,888", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,900", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "생산 현황판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,932", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,944", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "작업지시 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,976", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,988", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "작업실적", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1020", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1032", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "작업자 화면", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1064", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1076", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1110", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1176", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1242", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1308", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1765,203", + "size": "121x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,393", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,462", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,510", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,595", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,595", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,595", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,900", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,944", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,988", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1032", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1076", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 7, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [ + { + "text": "엑셀 다운로드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1765,203", + "size": "121x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "downloadRelated": true + } + ], + "summary": { + "totalButtons": 39, + "downloadRelated": 1, + "iconOnly": 8, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "생산관리 > 작업실적", + "expectedUrl": "/production/work-results", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/approval/inbox", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,126", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,162", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,228", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,294", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,360", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기안함", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,426", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,438", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결재함", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,470", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,482", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "참조함", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,514", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,526", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,560", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,626", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,692", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,758", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,824", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,890", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,956", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1022", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1088", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1154", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1220", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "2026년 01월 01일 ~ 2026년 12월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "285x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "전체결재 15", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "841,393", + "size": "99x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "미결재 0", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "948,393", + "size": "81x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "결재완료 9", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1037,393", + "size": "93x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "결재반려 6", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1137,393", + "size": "93x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1238,394", + "size": "140x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1386,394", + "size": "140x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1534,394", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1662,394", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,396", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "전체결재15", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "미결재0", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "결재완료9", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "결재반려6", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "필터1", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + }, + { + "text": "초기화", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "text-xs text-muted-foreground hover:text-foreground flex ite" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,467", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,571", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,627", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,683", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,739", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,795", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,851", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,907", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,963", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1019", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1075", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1187", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1243", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1299", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,1385", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,1385", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,1385", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,438", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,482", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,526", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 43, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [], + "summary": { + "totalButtons": 78, + "downloadRelated": 0, + "iconOnly": 7, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "결재관리 > 결재함", + "expectedUrl": "/approval/inbox", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/approval/reference", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,126", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,162", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,228", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,294", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,360", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기안함", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,426", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,438", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결재함", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,470", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,482", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "참조함", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,514", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,526", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,560", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,626", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,692", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,758", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,824", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,890", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,956", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1022", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1088", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1154", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1220", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "2026년 01월 01일 ~ 2026년 12월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "285x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "전체 6", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "996,393", + "size": "68x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "열람 6", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1073,393", + "size": "68x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "미열람 0", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1149,393", + "size": "81x37", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1238,394", + "size": "140x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1386,394", + "size": "140x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1534,394", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1662,394", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,396", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "전체6", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "열람6", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "미열람0", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "\n inline-flex items-center gap-1.5 px-3.5 py-2 rounde" + }, + { + "text": "필터1", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + }, + { + "text": "초기화", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "text-xs text-muted-foreground hover:text-foreground flex ite" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "미열람 처리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "미열람 처리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "미열람 처리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "미열람 처리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "미열람 처리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "미열람 처리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,467", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,515", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,571", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,627", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,683", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,739", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,795", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,881", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,881", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,881", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,438", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,482", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,526", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 24, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [], + "summary": { + "totalButtons": 64, + "downloadRelated": 0, + "iconOnly": 7, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "결재관리 > 참조함", + "expectedUrl": "/approval/reference", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/purchase", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-303", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-267", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-248", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-201", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-135", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-69", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-3", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,63", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,129", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,195", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,261", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,327", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,393", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,459", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,525", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,591", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,657", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,723", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1295", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1339", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1383", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1427", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1471", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026년 01월 01일 ~ 2026년 12월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "285x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "오늘", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "597,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "어제", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "650,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "704,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "757,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "811,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당해년도", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "876,203", + "size": "74x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "미설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1688,201", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "저장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1816,203", + "size": "70x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "거래처 전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1278,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1406,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1534,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1662,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,395", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "필터1", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + }, + { + "text": "초기화", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "text-xs text-muted-foreground hover:text-foreground flex ite" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,514", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,513", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1735,636", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,636", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,636", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-248", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 15, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [], + "summary": { + "totalButtons": 81, + "downloadRelated": 0, + "iconOnly": 22, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 매입관리", + "expectedUrl": "/accounting/purchase", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/sales", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-259", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-223", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-204", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-157", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-91", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-25", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,41", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,107", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,173", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,239", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,305", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,371", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,437", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,503", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,569", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,635", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,701", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1295", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1339", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1383", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1427", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1471", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1515", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1527", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026년 01월 01일 ~ 2026년 12월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "285x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "오늘", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "597,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "어제", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "650,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "704,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "757,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "811,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당해년도", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "876,203", + "size": "74x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "미설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1572,201", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "저장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1700,203", + "size": "70x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "매출 등록", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1778,201", + "size": "108x36", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "거래처 전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1278,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1406,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1534,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1662,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,395", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "필터1", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + }, + { + "text": "초기화", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "text-xs text-muted-foreground hover:text-foreground flex ite" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "더 보기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,514", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,513", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,513", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,570", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,569", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,569", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,626", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,625", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,625", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,682", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,681", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,681", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,738", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,737", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,737", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,794", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,793", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,793", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,850", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,849", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,849", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,906", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,905", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,905", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,962", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,961", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,961", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1018", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1017", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1017", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1074", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1073", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1073", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1130", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1129", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1129", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1186", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1185", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1185", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1242", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1241", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1241", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1298", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1297", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1297", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1354", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1353", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1353", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1410", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1409", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1409", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1465", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1465", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1522", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1521", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1521", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1578", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1608,1577", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1766,1577", + "size": "32x18", + "tag": "BUTTON", + "classes": "peer data-[state=unchecked]:bg-switch-background focus-visib" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1695,1700", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1752,1700", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "2", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,1700", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,1700", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-204", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1395", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1439", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1483", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1527", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 211, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [], + "summary": { + "totalButtons": 241, + "downloadRelated": 0, + "iconOnly": 22, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 매출관리", + "expectedUrl": "/accounting/sales", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/accounting/withdrawals", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-435", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-399", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-380", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-333", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-267", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-201", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-135", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-69", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,-3", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,63", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,129", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,195", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,261", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,327", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,393", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,459", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,525", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "세금계산서발행", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,591", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "세금계산서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,635", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "상품권관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,679", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일반전표입력", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,723", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,767", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "거래처원장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,811", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매출관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,855", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "매입관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,899", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "어음관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,943", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "입금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,987", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "출금관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1031", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "계좌입출금내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1075", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "카드사용내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1119", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "미수금현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1163", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "지출예상내역서", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1207", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "악성채권추심관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1251", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "일일 일보", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1295", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "결제내역", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,1339", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "2026년 01월 01일 ~ 2026년 12월 31일", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "304,203", + "size": "285x32", + "tag": "BUTTON", + "classes": "inline-flex items-center gap-2 whitespace-nowrap rounded-md " + }, + { + "text": "오늘", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "597,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "어제", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "650,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "704,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "757,203", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "전전월", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "811,203", + "size": "62x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "당해년도", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "876,203", + "size": "74x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap fo" + }, + { + "text": "미설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1472,201", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "저장", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1600,203", + "size": "70x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "새로고침", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1678,203", + "size": "96x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "출금등록", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1782,201", + "size": "104x36", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1120,393", + "size": "140x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1268,393", + "size": "130x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1406,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "전체", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1534,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "최신순", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1662,393", + "size": "120x36", + "tag": "BUTTON", + "classes": "border-input data-[placeholder]:text-muted-foreground [&_svg" + }, + { + "text": "컬럼", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1790,395", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "필터1", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + }, + { + "text": "초기화", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "text-xs text-muted-foreground hover:text-foreground flex ite" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "더 보기", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,514", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,570", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,626", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,682", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,738", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,794", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,850", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,906", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,962", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1018", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1074", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1130", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1186", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1242", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1298", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1354", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1410", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1466", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1522", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "350,1578", + "size": "16x16", + "tag": "BUTTON", + "classes": "peer bg-input-background dark:bg-input/30 data-[state=checke" + }, + { + "text": "이전", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1583,1700", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "1", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1640,1700", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "2", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1680,1700", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "3", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1720,1700", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "5", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1792,1700", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "다음", + "ariaLabel": "", + "title": "", + "hasSvg": false, + "isVisible": true, + "position": "1836,1700", + "size": "50x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,-380", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,603", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,647", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,691", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,735", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,779", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,823", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,867", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,911", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,955", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,999", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1043", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1087", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1131", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1175", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1219", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1263", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1307", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,1351", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "ml-0.5 rounded-full hover:bg-foreground/10 p-0.5", + "svgPathCount": 2 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 1, + "tabCount": 52, + "h1": "SAM", + "h2": "", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [], + "summary": { + "totalButtons": 125, + "downloadRelated": 0, + "iconOnly": 22, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "회계관리 > 출금관리", + "expectedUrl": "/accounting/withdrawals", + "dropdownContents": [] + }, + { + "url": "https://dev.codebridge-x.com/hr/attendance", + "allButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1703,25", + "size": "163x60", + "tag": "BUTTON", + "classes": "justify-center whitespace-nowrap text-sm font-medium disable" + }, + { + "text": "모두 접기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,126", + "size": "213x32", + "tag": "BUTTON", + "classes": "w-full flex items-center space-x-2 px-3 py-2 rounded-lg text" + }, + { + "text": "시스템 대시보드", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,162", + "size": "191x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "품질관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,228", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "품목관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,294", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "결재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,360", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "기준정보 관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,426", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "게시판", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,492", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "인사관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,558", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "사원관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,624", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,636", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "부서관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,668", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,680", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "근태현황", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,712", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,724", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "근태관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,756", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,768", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "급여관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,800", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,812", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "휴가관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "55,844", + "size": "171x40", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-lg transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,856", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "고객센터", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,890", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "설정", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,956", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "판매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1022", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "생산관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1088", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "구매관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1154", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "자재관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1220", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "출고관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1286", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "회계관리", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "29,1352", + "size": "213x60", + "tag": "BUTTON", + "classes": "flex-1 min-w-0 flex items-center rounded-xl transition-all d" + }, + { + "text": "(empty)", + "ariaLabel": "단축키", + "title": "단축키", + "hasSvg": false, + "isVisible": true, + "position": "1486,1081", + "size": "0x0", + "tag": "BUTTON", + "classes": "" + }, + { + "text": "(empty)", + "ariaLabel": "마지막 수정 실행취소", + "title": "마지막 수정 실행취소", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "" + }, + { + "text": "(empty)", + "ariaLabel": "전체 화면보기로 전환", + "title": "전체 화면보기로 전환", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "gm-control-active gm-fullscreen-control" + }, + { + "text": "(empty)", + "ariaLabel": "확대", + "title": "확대", + "hasSvg": false, + "isVisible": true, + "position": "1436,976", + "size": "40x40", + "tag": "BUTTON", + "classes": "gm-control-active" + }, + { + "text": "(empty)", + "ariaLabel": "축소", + "title": "축소", + "hasSvg": false, + "isVisible": true, + "position": "1436,1017", + "size": "40x40", + "tag": "BUTTON", + "classes": "gm-control-active" + }, + { + "text": "단축키", + "ariaLabel": "단축키", + "title": "단축키", + "hasSvg": false, + "isVisible": true, + "position": "1265,1068", + "size": "28x14", + "tag": "BUTTON", + "classes": "" + }, + { + "text": "지도 데이터", + "ariaLabel": "지도 데이터", + "title": "지도 데이터", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "" + }, + { + "text": "50 m 클릭하여 미터법과 야드파운드법 간에 전환", + "ariaLabel": "지도 축척: 53픽셀당 50m", + "title": "지도 축척: 53픽셀당 50m", + "hasSvg": false, + "isVisible": false, + "position": "0,0", + "size": "0x0", + "tag": "BUTTON", + "classes": "gm-style-cc" + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1826,155", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "퇴근하기", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1511,458", + "size": "351x56", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center gap-2 whitespace-now" + }, + { + "text": "Dev", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1822,968", + "size": "72x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te" + } + ], + "toolbarButtons": [ + { + "containerSelector": "header", + "text": "홍킬동 개발중인 메뉴", + "ariaLabel": "", + "tag": "BUTTON" + } + ], + "iconOnlyButtons": [ + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "331,39", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 3 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1627,39", + "size": "64x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "219,181", + "size": "22x22", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-1 rounded transition-all duration-200 opacit", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,636", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,680", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,724", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,768", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,812", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "즐겨찾기 추가", + "hasSvg": true, + "isVisible": true, + "position": "225,856", + "size": "16x16", + "tag": "BUTTON", + "classes": "flex-shrink-0 p-0.5 rounded transition-all duration-200 opac", + "svgPathCount": 1 + }, + { + "text": "(empty)", + "ariaLabel": "", + "title": "", + "hasSvg": true, + "isVisible": true, + "position": "1826,155", + "size": "36x32", + "tag": "BUTTON", + "classes": "inline-flex items-center justify-center whitespace-nowrap te", + "svgPathCount": 2 + } + ], + "dropdownMenuItems": [ + { + "text": "시스템 대시보드", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품질관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "품목관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "결재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "기준정보 관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "게시판", + "role": "", + "tag": "BUTTON" + }, + { + "text": "인사관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "고객센터", + "role": "", + "tag": "BUTTON" + }, + { + "text": "설정", + "role": "", + "tag": "BUTTON" + }, + { + "text": "판매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "생산관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "구매관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "자재관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "출고관리", + "role": "", + "tag": "BUTTON" + }, + { + "text": "회계관리", + "role": "", + "tag": "BUTTON" + } + ], + "downloadLinks": [], + "hiddenElements": [], + "svgButtons": [], + "tableHeaderActions": [], + "contextInfo": { + "tableCount": 1, + "inputCount": 0, + "tabCount": 2, + "h1": "SAM", + "h2": "출퇴근하기", + "pageTitle": "[D]SAM - 내 손안의 대시보드" + }, + "downloadButtons": [], + "summary": { + "totalButtons": 43, + "downloadRelated": 0, + "iconOnly": 10, + "toolbarActions": 1, + "dropdownItems": 15, + "downloadLinks": 0, + "hiddenDownload": 0 + }, + "targetName": "인사관리 > 근태현황", + "expectedUrl": "/hr/attendance", + "dropdownContents": [] + } +] \ No newline at end of file diff --git a/e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.md b/e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.md new file mode 100644 index 0000000..4f8e61f --- /dev/null +++ b/e2e/results/hotfix/Button-Survey_2026-03-04_22-21-22.md @@ -0,0 +1,339 @@ +# 🔍 버튼/액션 요소 전수 조사 리포트 + +**실행 시간**: 2026-03-04_22-21-22 | **소요**: 158.8초 + +## 📊 요약 + +| # | 페이지 | 다운로드 버튼 | 전체 버튼 | 탭 | 드롭다운 | +|---|--------|-------------|---------|-----|----------| +| 1 | 회계관리 > 일일 일보 | 엑셀 | 60 | 3 | 0 | +| 2 | 회계관리 > 계좌입출금내역 | 엑셀 다운로드 | 89 | 22 | 0 | +| 3 | 회계관리 > 카드사용내역 | 엑셀 다운로드 | 166 | 68 | 0 | +| 4 | 회계관리 > 세금계산서관리 | 엑셀 다운로드 | 75 | 8 | 0 | +| 5 | 회계관리 > 미수금현황 | 엑셀 다운로드 | 257 | 264 | 0 | +| 6 | 회계관리 > 거래처원장 | 엑셀 다운로드 | 114 | 46 | 0 | +| 7 | 자재관리 > 재고현황 | 엑셀 다운로드 | 41 | 9 | 0 | +| 8 | 생산관리 > 작업실적 | 엑셀 다운로드 | 39 | 7 | 0 | +| 9 | 결재관리 > 결재함 | 없음 | 78 | 43 | 0 | +| 10 | 결재관리 > 참조함 | 없음 | 64 | 24 | 0 | +| 11 | 회계관리 > 매입관리 | 없음 | 81 | 15 | 0 | +| 12 | 회계관리 > 매출관리 | 없음 | 241 | 211 | 0 | +| 13 | 회계관리 > 출금관리 | 없음 | 125 | 52 | 0 | +| 14 | 인사관리 > 근태현황 | 없음 | 43 | 2 | 0 | + +## 📋 페이지별 상세 + +### 1. 회계관리 > 일일 일보 + +- **URL**: https://dev.codebridge-x.com/accounting/daily-report +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 2개 | **입력필드**: 0개 | **탭**: 3개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 | - | - | ✅ | 1801,218 | 68x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 21개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) + +--- + +### 2. 회계관리 > 계좌입출금내역 + +- **URL**: https://dev.codebridge-x.com/accounting/bank-transactions +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 22개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1617,203 | 123x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 22개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,4) + +--- + +### 3. 회계관리 > 카드사용내역 + +- **URL**: https://dev.codebridge-x.com/accounting/card-transactions +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 61개 | **탭**: 68개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1605,203 | 123x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 22개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,4) + +--- + +### 4. 회계관리 > 세금계산서관리 + +- **URL**: https://dev.codebridge-x.com/accounting/tax-invoices +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 8개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1657,468 | 123x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 21개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) + +**탭별 다운로드 버튼:** +- [매출 3]: 엑셀 다운로드 +- [매입 3]: 엑셀 다운로드 + +--- + +### 5. 회계관리 > 미수금현황 + +- **URL**: https://dev.codebridge-x.com/accounting/receivables-status +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 264개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1660,220 | 127x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 86개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) + +--- + +### 6. 회계관리 > 거래처원장 + +- **URL**: https://dev.codebridge-x.com/accounting/vendor-ledger +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 46개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1759,203 | 127x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 21개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) + +--- + +### 7. 자재관리 > 재고현황 + +- **URL**: https://dev.codebridge-x.com/material/stock-status +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 9개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1765,203 | 121x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 5개 (SVG path: 3,2,1,1,1) + +--- + +### 8. 생산관리 > 작업실적 + +- **URL**: https://dev.codebridge-x.com/production/work-results +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 7개 + +**✅ 다운로드 관련 버튼:** + +| 텍스트 | aria-label | title | 가시성 | 위치 | 크기 | +|--------|-----------|-------|--------|------|------| +| 엑셀 다운로드 | - | - | ✅ | 1765,203 | 121x32 | + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 8개 (SVG path: 3,2,1,1,1,1,1,1) + +
모든 가시 버튼 (28개) + +| 텍스트 | tag | aria-label | SVG | +|--------|-----|-----------|-----| +| 홍킬동 개발중인 메뉴 | BUTTON | - | ✅ | +| 모두 접기 | BUTTON | - | ✅ | +| 시스템 대시보드 | BUTTON | - | ✅ | +| 품질관리 | BUTTON | - | ✅ | +| 품목관리 | BUTTON | - | ✅ | +| 결재관리 | BUTTON | - | ✅ | +| 기준정보 관리 | BUTTON | - | ✅ | +| 게시판 | BUTTON | - | ✅ | +| 인사관리 | BUTTON | - | ✅ | +| 고객센터 | BUTTON | - | ✅ | +| 설정 | BUTTON | - | ✅ | +| 판매관리 | BUTTON | - | ✅ | +| 생산관리 | BUTTON | - | ✅ | +| 품목관리 | BUTTON | - | ✅ | +| 생산 현황판 | BUTTON | - | ✅ | +| 작업지시 관리 | BUTTON | - | ✅ | +| 작업실적 | BUTTON | - | ✅ | +| 작업자 화면 | BUTTON | - | ✅ | +| 구매관리 | BUTTON | - | ✅ | +| 자재관리 | BUTTON | - | ✅ | +| 출고관리 | BUTTON | - | ✅ | +| 회계관리 | BUTTON | - | ✅ | +| 엑셀 다운로드 | BUTTON | - | ✅ | +| 컬럼 | BUTTON | - | ✅ | +| 이전 | BUTTON | - | | +| 1 | BUTTON | - | | +| 다음 | BUTTON | - | | +| Dev | BUTTON | - | ✅ | + +
+ +--- + +### 9. 결재관리 > 결재함 + +- **URL**: https://dev.codebridge-x.com/approval/inbox +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 43개 + +**⚠️ 다운로드 관련 버튼 없음** + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 7개 (SVG path: 3,2,1,1,1,1,2) + +--- + +### 10. 결재관리 > 참조함 + +- **URL**: https://dev.codebridge-x.com/approval/reference +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 24개 + +**⚠️ 다운로드 관련 버튼 없음** + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 7개 (SVG path: 3,2,1,1,1,1,2) + +--- + +### 11. 회계관리 > 매입관리 + +- **URL**: https://dev.codebridge-x.com/accounting/purchase +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 15개 + +**⚠️ 다운로드 관련 버튼 없음** + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 22개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2) + +--- + +### 12. 회계관리 > 매출관리 + +- **URL**: https://dev.codebridge-x.com/accounting/sales +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 211개 + +**⚠️ 다운로드 관련 버튼 없음** + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 22개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2) + +--- + +### 13. 회계관리 > 출금관리 + +- **URL**: https://dev.codebridge-x.com/accounting/withdrawals +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: (없음) +- **테이블**: 1개 | **입력필드**: 1개 | **탭**: 52개 + +**⚠️ 다운로드 관련 버튼 없음** + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 22개 (SVG path: 3,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2) + +--- + +### 14. 인사관리 > 근태현황 + +- **URL**: https://dev.codebridge-x.com/hr/attendance +- **페이지 타이틀**: [D]SAM - 내 손안의 대시보드 +- **h1**: SAM | **h2**: 출퇴근하기 +- **테이블**: 1개 | **입력필드**: 0개 | **탭**: 2개 + +**⚠️ 다운로드 관련 버튼 없음** + +**툴바 버튼**: 홍킬동 개발중인 메뉴 + +**아이콘 전용 버튼**: 10개 (SVG path: 3,2,1,1,1,1,1,1,1,2) + +
모든 가시 버튼 (26개) + +| 텍스트 | tag | aria-label | SVG | +|--------|-----|-----------|-----| +| 홍킬동 개발중인 메뉴 | BUTTON | - | ✅ | +| 모두 접기 | BUTTON | - | ✅ | +| 시스템 대시보드 | BUTTON | - | ✅ | +| 품질관리 | BUTTON | - | ✅ | +| 품목관리 | BUTTON | - | ✅ | +| 결재관리 | BUTTON | - | ✅ | +| 기준정보 관리 | BUTTON | - | ✅ | +| 게시판 | BUTTON | - | ✅ | +| 인사관리 | BUTTON | - | ✅ | +| 사원관리 | BUTTON | - | ✅ | +| 부서관리 | BUTTON | - | ✅ | +| 근태현황 | BUTTON | - | ✅ | +| 근태관리 | BUTTON | - | ✅ | +| 급여관리 | BUTTON | - | ✅ | +| 휴가관리 | BUTTON | - | ✅ | +| 고객센터 | BUTTON | - | ✅ | +| 설정 | BUTTON | - | ✅ | +| 판매관리 | BUTTON | - | ✅ | +| 생산관리 | BUTTON | - | ✅ | +| 구매관리 | BUTTON | - | ✅ | +| 자재관리 | BUTTON | - | ✅ | +| 출고관리 | BUTTON | - | ✅ | +| 회계관리 | BUTTON | - | ✅ | +| 단축키 | BUTTON | 단축키 | | +| 퇴근하기 | BUTTON | - | ✅ | +| Dev | BUTTON | - | ✅ | + +
+ +--- + diff --git a/e2e/results/hotfix/Download-Verify_2026-03-04_22-13-37.md b/e2e/results/hotfix/Download-Verify_2026-03-04_22-13-37.md new file mode 100644 index 0000000..70f49d5 --- /dev/null +++ b/e2e/results/hotfix/Download-Verify_2026-03-04_22-13-37.md @@ -0,0 +1,131 @@ +# 📥 다운로드 기능 검증 리포트 + +**실행 시간**: 2026-03-04 22-13-37 | **소요**: 245.8초 + +## 📊 요약 + +| 항목 | 결과 | +|------|------| +| 전체 페이지 | 20개 | +| ✅ PASS | 1개 | +| ⚠️ PARTIAL | 0개 | +| ❌ FAIL | 9개 | +| ⏭️ SKIP/ERROR | 10개 | +| 다운로드 시도 | 10건 | +| 다운로드 성공 | 1건 | +| 다운로드 실패 | 9건 | + +## 📋 페이지별 결과 + +| # | 페이지 | 상태 | 다운로드 | 비고 | +|---|--------|------|---------|------| +| 1 | 회계관리 > 매입관리 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀) | +| 2 | 회계관리 > 일일 일보 | ❌ FAIL | 0/1 | API 응답 404 | +| 3 | 회계관리 > 계좌입출금내역 | ❌ FAIL | 0/1 | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | +| 4 | 회계관리 > 카드사용내역 | ❌ FAIL | 0/1 | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | +| 5 | 회계관리 > 지출예상내역서 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀, PDF) | +| 6 | 회계관리 > 세금계산서관리 | ❌ FAIL | 0/1 | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | +| 7 | 회계관리 > 결제내역 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀, Excel, 다운로드) | +| 8 | 회계관리 > 매출관리 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀) | +| 9 | 회계관리 > 미수금현황 | ❌ FAIL | 0/1 | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | +| 10 | 회계관리 > 출금관리 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀, 다운로드) | +| 11 | 회계관리 > 거래처원장 | ❌ FAIL | 0/1 | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | +| 12 | 결재관리 > 결재함 | ❌ FAIL | 0/1 | API 응답 500 | +| 13 | 결재관리 > 참조함 | ❌ FAIL | 0/1 | API 응답 500 | +| 14 | 인사관리 > 근태현황 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀) | +| 15 | 자재관리 > 재고현황 | ❌ FAIL | 0/1 | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | +| 16 | 구매관리 > 구매현황 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀, Excel) | +| 17 | 생산관리 > 작업실적 | ✅ PASS | 1/1 | | +| 18 | 판매관리 > 단가관리 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀) | +| 19 | 판매관리 > 거래처관리 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: 엑셀) | +| 20 | 판매관리 > 견적관리 | ⏭️ NO_BUTTON | - | 다운로드 버튼 없음 (검색: PDF, 출력) | + +## 📂 다운로드 상세 결과 + +### 회계관리 > 일일 일보 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 | excel | ❌ | - | - | API 응답 404 | + +### 회계관리 > 계좌입출금내역 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ❌ | - | - | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | + +### 회계관리 > 카드사용내역 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ❌ | - | - | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | + +### 회계관리 > 세금계산서관리 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ❌ | - | - | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | + +### 회계관리 > 미수금현황 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ❌ | - | - | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | + +### 회계관리 > 거래처원장 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ❌ | - | - | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | + +### 결재관리 > 결재함 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| PDF | pdf | ❌ | - | - | API 응답 500 | + +### 결재관리 > 참조함 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| PDF | pdf | ❌ | - | - | API 응답 500 | + +### 자재관리 > 재고현황 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ❌ | - | - | 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) | + +### 생산관리 > 작업실적 + +| 버튼 | 유형 | 결과 | 파일명 | 크기 | 비고 | +|------|------|------|--------|------|------| +| 엑셀 다운로드 | excel | ✅ | 작업실적_20260304_221308.xlsx | 17.2KB | | + +## 📁 다운로드된 파일 목록 + +| # | 파일명 | 크기 | +|---|--------|------| +| 1 | 작업실적_20260304_221308.xlsx | 17.2KB | + +## ❌ 실패/이슈 항목 + +- **회계관리 > 매입관리**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀) +- **회계관리 > 일일 일보**: FAIL - 엑셀: API 응답 404 +- **회계관리 > 계좌입출금내역**: FAIL - 엑셀 다운로드: 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) +- **회계관리 > 카드사용내역**: FAIL - 엑셀 다운로드: 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) +- **회계관리 > 지출예상내역서**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀, PDF) +- **회계관리 > 세금계산서관리**: FAIL - 엑셀 다운로드: 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) +- **회계관리 > 결제내역**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀, Excel, 다운로드) +- **회계관리 > 매출관리**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀) +- **회계관리 > 미수금현황**: FAIL - 엑셀 다운로드: 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) +- **회계관리 > 출금관리**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀, 다운로드) +- **회계관리 > 거래처원장**: FAIL - 엑셀 다운로드: 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) +- **결재관리 > 결재함**: FAIL - PDF: API 응답 500 +- **결재관리 > 참조함**: FAIL - PDF: API 응답 500 +- **인사관리 > 근태현황**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀) +- **자재관리 > 재고현황**: FAIL - 엑셀 다운로드: 다운로드 이벤트 및 API 응답 없음 (10초 타임아웃) +- **구매관리 > 구매현황**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀, Excel) +- **판매관리 > 단가관리**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀) +- **판매관리 > 거래처관리**: NO_BUTTON - 다운로드 버튼 없음 (검색: 엑셀) +- **판매관리 > 견적관리**: NO_BUTTON - 다운로드 버튼 없음 (검색: PDF, 출력) diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-02-27_16-08-22.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-02-27_16-08-22.md deleted file mode 100644 index 42a75d3..0000000 --- a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-02-27_16-08-22.md +++ /dev/null @@ -1,50 +0,0 @@ -# E2E 전체 테스트 결과 요약 - -**실행 시간**: 2026-02-27_16-08-22 -**총 소요 시간**: 8.3분 -**전체 시나리오**: 8개 | **성공**: 0개 | **실패**: 8개 - -## 카테고리별 요약 -| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | -|---------|-----------|------|------|--------| -| 기능 테스트 | 8 | 0 | 8 | 0% | - -## 시나리오별 결과 -| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | -|---|---------|------|------|------|------|---------| -| 1 | 연속 등록 테스트: 입금관리 | ❌ | 26 | 25 | 1 | 74.8 | -| 2 | 연속 등록 테스트: 자유게시판 | ❌ | 33 | 32 | 1 | 95.1 | -| 3 | Create+Delete 테스트: 자유게시판 | ❌ | 12 | 11 | 1 | 41.0 | -| 4 | Full CRUD 테스트: 매출관리 | ❌ | 20 | 19 | 1 | 54.0 | -| 5 | Full CRUD 테스트: 자유게시판 | ❌ | 20 | 19 | 1 | 57.2 | -| 6 | 새로고침 데이터 유지 검증: 입금관리 | ❌ | 16 | 15 | 1 | 60.9 | -| 7 | 새로고침 데이터 유지 검증: 자유게시판 | ❌ | 16 | 15 | 1 | 53.4 | -| 8 | Full CRUD 테스트: 매출관리 | ❌ | 23 | 22 | 1 | 59.0 | - -## 실패 시나리오 상세 - -### ❌ 연속 등록 테스트: 입금관리 (batch-create-acc-deposit) -- Step 23 ([회계관리 > 입금관리] [DELETE #2] 데이터 삭제): E2E_TEST_ 데이터 없음 (ts=20260227_160016) - -### ❌ 연속 등록 테스트: 자유게시판 (batch-create-board) -- Step 33 ([게시판 > 자유게시판] [VERIFY] 전체 삭제 확인): 기대 0건, 실제 3건 rows=10 body=true row0=[ 1 -0E2E_BATCH_3_20260227_160131 - 회원 4 게시됨 2026-02-27] - -### ❌ Create+Delete 테스트: 자유게시판 (create-delete-board) -- Step 12 ([게시판 > 자유게시판] [VERIFY] 삭제 확인): E2E_TEST_ 데이터가 여전히 존재 - 수동 삭제 필요 - -### ❌ Full CRUD 테스트: 매출관리 (full-crud-acc-sales) -- Step 15 ([회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산)): evaluate returned ok:false - -### ❌ Full CRUD 테스트: 자유게시판 (full-crud-board) -- Step 20 ([게시판 > 자유게시판] [VERIFY] 삭제 확인): E2E_TEST_ 데이터가 여전히 존재 - -### ❌ 새로고침 데이터 유지 검증: 입금관리 (reload-persist-acc-deposit) -- Step 3 ([회계관리 > 입금관리] [CREATE] 데이터 생성): 등록 실패 (API POST 없음, url=/accounting/deposits?mode=new) - -### ❌ 새로고침 데이터 유지 검증: 자유게시판 (reload-persist-board) -- Step 16 ([게시판 > 자유게시판] [VERIFY] 삭제 확인): 삭제된 데이터(ts=20260227_160639)가 여전히 존재 - -### ❌ Full CRUD 테스트: 매출관리 (sales-management) -- Step 16 ([회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산 확인)): evaluate returned ok:false diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-48-40.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-48-40.md new file mode 100644 index 0000000..4bcc46f --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-48-40.md @@ -0,0 +1,20 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-02_21-48-40 +**총 소요 시간**: 0.4분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ❌ | 23 | 20 | 1 | 21.0 | + +## 실패 시나리오 상세 + +### ❌ 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 (settings-card) +- Step 2 (URL 검증): URL missing: /settings/card diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-52-17.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-52-17.md new file mode 100644 index 0000000..600f194 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-52-17.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-02_21-52-17 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.1 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-55-32.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-55-32.md new file mode 100644 index 0000000..9b84486 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-55-32.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-02_21-55-32 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 시스템 대시보드 위젯/통계/현황판/자금현황/지출예상/설정 테스트 | ✅ | 20 | 19 | 0 | 11.0 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-58-59.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-58-59.md new file mode 100644 index 0000000..e03bda3 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_21-58-59.md @@ -0,0 +1,20 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-02_21-58-59 +**총 소요 시간**: 0.4분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 | ❌ | 23 | 20 | 1 | 21.1 | + +## 실패 시나리오 상세 + +### ❌ 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 (material-dispatch) +- Step 2 (URL 검증): URL missing: /shipment/dispatch diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_22-03-42.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_22-03-42.md new file mode 100644 index 0000000..9622484 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-02_22-03-42.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-02_22-03-42 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.0 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-39-07.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-39-07.md new file mode 100644 index 0000000..c34ee5e --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-39-07.md @@ -0,0 +1,22 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-39-07 +**총 소요 시간**: 0.6분 +**전체 시나리오**: 2개 | **성공**: 2개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 1 | 1 | 0 | 100% | +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 결재관리 > 결재함 | ✅ | 4 | 3 | 0 | 12.5 | +| 2 | 결재함 E2E 테스트 | ✅ | 25 | 23 | 0 | 25.4 | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 결재관리 > 결재함 | - | - | - | - | - | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-42-04.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-42-04.md new file mode 100644 index 0000000..895c8a8 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-42-04.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-42-04 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 기안함 테스트 | ✅ | 17 | 15 | 0 | 11.9 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-45-29.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-45-29.md new file mode 100644 index 0000000..adc5116 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-45-29.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-45-29 +**총 소요 시간**: 0.5분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 참조함 E2E 테스트 | ✅ | 40 | 37 | 0 | 27.6 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-48-25.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-48-25.md new file mode 100644 index 0000000..13d4b34 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-48-25.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-48-25 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.1 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-51-31.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-51-31.md new file mode 100644 index 0000000..0c80dc1 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-51-31.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-51-31 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 카드사용내역 테스트 | ✅ | 19 | 16 | 0 | 10.4 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-54-50.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-54-50.md new file mode 100644 index 0000000..2c8db14 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-54-50.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-54-50 +**총 소요 시간**: 0.3분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 휴가관리 테스트 | ✅ | 25 | 19 | 0 | 19.1 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-58-48.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-58-48.md new file mode 100644 index 0000000..276a388 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_14-58-48.md @@ -0,0 +1,32 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_14-58-48 +**총 소요 시간**: 1.1분 +**전체 시나리오**: 6개 | **성공**: 6개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 1 | 1 | 0 | 100% | +| 기능 테스트 | 4 | 4 | 0 | 100% | +| 성능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 인사관리 > 근태관리 | ✅ | 4 | 3 | 0 | 12.5 | +| 2 | 근태현황 출퇴근 테스트 | ✅ | 17 | 17 | 0 | 12.9 | +| 3 | 근태관리 테스트 | ✅ | 14 | 14 | 0 | 10.3 | +| 4 | 근태현황 테스트 | ✅ | 19 | 14 | 0 | 11.9 | +| 5 | 성능 측정: 인사관리 > 근태관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 6 | 근태설정 테스트 | ✅ | 16 | 13 | 0 | 10.1 | + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 인사관리 > 근태관리 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 인사관리 > 근태관리 | - | - | - | - | - | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-02-06.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-02-06.md new file mode 100644 index 0000000..c719f75 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-02-06.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_15-02-06 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 계좌관리 테스트 | ✅ | 23 | 21 | 0 | 12.4 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-05-38.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-05-38.md new file mode 100644 index 0000000..0edaacd --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-05-38.md @@ -0,0 +1,29 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_15-05-38 +**총 소요 시간**: 0.6분 +**전체 시나리오**: 3개 | **성공**: 3개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 1 | 1 | 0 | 100% | +| 기능 테스트 | 1 | 1 | 0 | 100% | +| 성능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 인사관리 > 급여관리 | ✅ | 4 | 4 | 0 | 11.4 | +| 2 | 급여관리 테스트 | ✅ | 22 | 22 | 0 | 13.2 | +| 3 | 성능 측정: 인사관리 > 급여관리 | ✅ | 5 | 5 | 0 | 9.1 | + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 인사관리 > 급여관리 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 인사관리 > 급여관리 | - | - | - | - | - | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-08-36.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-08-36.md new file mode 100644 index 0000000..38fec56 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-08-36.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_15-08-36 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력관리 테스트 | ✅ | 8 | 7 | 0 | 10.7 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-11-47.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-11-47.md new file mode 100644 index 0000000..26f45ab --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-11-47.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_15-11-47 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 바로빌연동관리 테스트 | ✅ | 8 | 6 | 0 | 11.7 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-14-55.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-14-55.md new file mode 100644 index 0000000..1a5adf1 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-14-55.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_15-14-55 +**총 소요 시간**: 0.1분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 휴가정책 테스트 | ✅ | 16 | 15 | 0 | 9.0 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-18-10.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-18-10.md new file mode 100644 index 0000000..80d621f --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_15-18-10.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_15-18-10 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 상품권관리 테스트 | ✅ | 11 | 9 | 0 | 12.3 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_16-52-09.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_16-52-09.md new file mode 100644 index 0000000..6f043b2 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_16-52-09.md @@ -0,0 +1,289 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_16-52-09 +**총 소요 시간**: 88.3분 +**전체 시나리오**: 206개 | **성공**: 206개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 18 | 18 | 0 | 100% | +| 기능 테스트 | 149 | 149 | 0 | 100% | +| 엣지 케이스 | 17 | 17 | 0 | 100% | +| 성능 테스트 | 17 | 17 | 0 | 100% | +| 비즈니스 워크플로우 | 5 | 5 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 회계관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.4 | +| 2 | 접근성 검사: 회계관리 > 입금관리 | ✅ | 4 | 3 | 0 | 12.4 | +| 3 | 접근성 검사: 회계관리 > 매입관리 | ✅ | 4 | 4 | 0 | 11.4 | +| 4 | 접근성 검사: 회계관리 > 매출관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 5 | 접근성 검사: 결재관리 > 결재함 | ✅ | 4 | 3 | 0 | 12.3 | +| 6 | 접근성 검사: 결재관리 > 기안함 | ✅ | 4 | 3 | 0 | 12.4 | +| 7 | 접근성 검사: 게시판 > 자유게시판 | ✅ | 4 | 3 | 0 | 12.4 | +| 8 | 접근성 검사: 인사관리 > 근태관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 9 | 접근성 검사: 인사관리 > 부서관리 | ✅ | 4 | 3 | 0 | 12.5 | +| 10 | 접근성 검사: 인사관리 > 사원관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 11 | 접근성 검사: 인사관리 > 급여관리 | ✅ | 4 | 4 | 0 | 11.4 | +| 12 | 접근성 검사: 자재관리 > 입고관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 13 | 접근성 검사: 자재관리 > 재고현황 | ✅ | 4 | 3 | 0 | 12.3 | +| 14 | 접근성 검사: 생산관리 > 품목관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 15 | 접근성 검사: 생산관리 > 작업지시 | ✅ | 4 | 3 | 0 | 12.4 | +| 16 | 접근성 검사: 판매관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.4 | +| 17 | 접근성 검사: 판매관리 > 견적관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 18 | 접근성 검사: 판매관리 > 수주관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 19 | 악성채권추심관리 테스트 | ✅ | 24 | 22 | 0 | 10.4 | +| 20 | 계좌입출금내역 테스트 | ✅ | 19 | 16 | 0 | 10.2 | +| 21 | 어음관리 테스트 | ✅ | 24 | 18 | 0 | 19.5 | +| 22 | 카드사용내역 테스트 | ✅ | 19 | 16 | 0 | 10.2 | +| 23 | 회계거래처관리 테스트 | ✅ | 23 | 20 | 0 | 16.5 | +| 24 | 일일 일보 테스트 | ✅ | 10 | 10 | 0 | 11.6 | +| 25 | 입금관리 테스트 | ✅ | 25 | 19 | 0 | 19.5 | +| 26 | 지출예상내역서 테스트 | ✅ | 19 | 14 | 0 | 11.7 | +| 27 | 상품권관리 테스트 | ✅ | 11 | 9 | 0 | 12.2 | +| 28 | 일반전표입력 테스트 | ✅ | 12 | 10 | 0 | 14.2 | +| 29 | 결제내역 테스트 | ✅ | 19 | 15 | 0 | 13.5 | +| 30 | 매입관리 테스트 | ✅ | 18 | 14 | 0 | 13.6 | +| 31 | 미수금현황 테스트 | ✅ | 19 | 16 | 0 | 11.8 | +| 32 | 매출관리 테스트 | ✅ | 18 | 14 | 0 | 13.6 | +| 33 | 세금계산서발행 테스트 | ✅ | 11 | 10 | 0 | 10.9 | +| 34 | 세금계산서관리 테스트 | ✅ | 11 | 10 | 0 | 10.9 | +| 35 | 출금관리 테스트 | ✅ | 25 | 19 | 0 | 19.5 | +| 36 | API 건강성 감사: 회계 | ✅ | 39 | 39 | 0 | 46.5 | +| 37 | API 건강성 감사: 생산/기타 | ✅ | 35 | 35 | 0 | 46.9 | +| 38 | API 건강성 감사: 판매/인사 | ✅ | 35 | 35 | 0 | 46.8 | +| 39 | 결재함 E2E 테스트 | ✅ | 25 | 23 | 0 | 25.5 | +| 40 | 근태현황 출퇴근 테스트 | ✅ | 17 | 17 | 0 | 12.9 | +| 41 | 연속 등록 테스트: 어음관리 | ✅ | 39 | 39 | 0 | 96.3 | +| 42 | 연속 등록 테스트: 입금관리 | ✅ | 39 | 39 | 0 | 102.4 | +| 43 | 연속 등록 테스트: 자유게시판 | ✅ | 39 | 39 | 0 | 94.9 | +| 44 | 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 | ✅ | 14 | 14 | 0 | 26.7 | +| 45 | 게시판 관리 테스트 | ✅ | 22 | 22 | 0 | 11.4 | +| 46 | 게시판 테스트 페이지 테스트 | ✅ | 13 | 11 | 0 | 14.5 | +| 47 | 설정 - 회사정보 | ✅ | 31 | 18 | 0 | 31.7 | +| 48 | Create+Delete 테스트: 어음관리 | ✅ | 12 | 12 | 0 | 38.5 | +| 49 | Create+Delete 테스트: 입금관리 | ✅ | 12 | 12 | 0 | 35.9 | +| 50 | Create+Delete 테스트: 자유게시판 | ✅ | 15 | 15 | 0 | 42.1 | +| 51 | 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) | ✅ | 15 | 15 | 0 | 39.2 | +| 52 | 이벤트 게시판 테스트 | ✅ | 19 | 14 | 0 | 13.8 | +| 53 | FAQ 테스트 | ✅ | 16 | 12 | 0 | 11.0 | +| 54 | 1:1 문의 테스트 | ✅ | 12 | 10 | 0 | 14.5 | +| 55 | 공지사항 테스트 | ✅ | 19 | 15 | 0 | 13.8 | +| 56 | 부서관리 테스트 | ✅ | 16 | 12 | 0 | 12.9 | +| 57 | 입금관리 테스트 | ✅ | 21 | 20 | 0 | 15.8 | +| 58 | 상세 조회 왕복 검증: 회계 | ✅ | 23 | 23 | 0 | 32.8 | +| 59 | 상세 조회 왕복 검증: 인사/게시판 | ✅ | 15 | 15 | 0 | 25.6 | +| 60 | 상세 조회 왕복 검증: 판매 | ✅ | 23 | 23 | 0 | 32.7 | +| 61 | 목록↔상세 필드별 대조 검증: 매출관리 | ✅ | 12 | 12 | 0 | 23.1 | +| 62 | 기안함 테스트 | ✅ | 17 | 15 | 0 | 11.8 | +| 63 | 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) | ✅ | 14 | 14 | 0 | 23.7 | +| 64 | 엣지 케이스: 경계값 입력 (회계 > 입금관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 65 | 엣지 케이스: 경계값 입력 (인사 > 사원관리) | ✅ | 14 | 14 | 0 | 23.5 | +| 66 | 엣지 케이스: 경계값 입력 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 67 | 엣지 케이스: 동시 액션 (인사 > 근태관리) | ✅ | 5 | 5 | 0 | 13.9 | +| 68 | 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) | ✅ | 7 | 7 | 0 | 19.1 | +| 69 | 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.1 | +| 70 | 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) | ✅ | 7 | 7 | 0 | 19.1 | +| 71 | 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.1 | +| 72 | 엣지 케이스: 숫자 경계값 (회계 > 입금관리) | ✅ | 13 | 13 | 0 | 23.7 | +| 73 | 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) | ✅ | 10 | 10 | 0 | 27.3 | +| 74 | 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) | ✅ | 6 | 6 | 0 | 15.9 | +| 75 | 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.9 | +| 76 | 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.9 | +| 77 | 엣지 케이스: 특수문자 검색 (게시판 > 자유게시판) | ✅ | 14 | 14 | 0 | 32.2 | +| 78 | 엣지 케이스: 특수문자 검색 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 32.1 | +| 79 | 엣지 케이스: 유니코드 입력 (게시판 > 자유게시판) | ✅ | 10 | 10 | 0 | 20.5 | +| 80 | 직원 등록 테스트 | ✅ | 22 | 21 | 0 | 31.1 | +| 81 | 폼 유효성 검증 감사: 회계 (어음/입금/출금) | ✅ | 20 | 20 | 0 | 43.2 | +| 82 | 폼 유효성 검증 감사: 생산/게시판 | ✅ | 13 | 13 | 0 | 25.2 | +| 83 | 폼 유효성 검증 감사: 판매 (거래처/수주/견적) | ✅ | 20 | 20 | 0 | 43.3 | +| 84 | 자유게시판 E2E 테스트 | ✅ | 22 | 22 | 0 | 13.2 | +| 85 | Full CRUD 테스트: 어음관리 (Enhanced) | ✅ | 32 | 32 | 0 | 57.1 | +| 86 | Full CRUD 테스트: 입금관리 (금액포맷+상세대조+API검증) | ✅ | 35 | 35 | 0 | 56.0 | +| 87 | Full CRUD 테스트: 매출관리 (계산검증+상세대조+API검증) | ✅ | 33 | 33 | 0 | 55.4 | +| 88 | Full CRUD 테스트: 자유게시판 (Enhanced) | ✅ | 33 | 33 | 0 | 64.0 | +| 89 | 근태관리 테스트 | ✅ | 14 | 14 | 0 | 10.2 | +| 90 | 근태현황 테스트 | ✅ | 19 | 14 | 0 | 12.0 | +| 91 | 부서관리 테스트 | ✅ | 14 | 14 | 0 | 9.9 | +| 92 | 사원관리 테스트 | ✅ | 22 | 22 | 0 | 13.5 | +| 93 | 급여관리 테스트 | ✅ | 22 | 22 | 0 | 13.2 | +| 94 | 휴가관리 테스트 | ✅ | 25 | 19 | 0 | 19.1 | +| 95 | 입력 필드 전수 테스트: 어음/입금/출금 (1/5) | ✅ | 20 | 20 | 0 | 54.2 | +| 96 | 입력 필드 전수 테스트: 거래처(회계)/악성채권 (2/5) | ✅ | 13 | 13 | 0 | 61.3 | +| 97 | 입력 필드 전수 테스트: 입고/제품검사 (5/5) | ✅ | 13 | 13 | 0 | 30.8 | +| 98 | 입력 필드 전수 테스트: 작업지시/작업실적 (4/5) | ✅ | 13 | 13 | 0 | 20.6 | +| 99 | 입력 필드 전수 테스트: 거래처(판매)/수주/견적 (3/5) | ✅ | 20 | 20 | 0 | 41.6 | +| 100 | 재고현황 테스트 | ✅ | 12 | 12 | 0 | 10.1 | +| 101 | 품목관리 테스트 | ✅ | 16 | 11 | 0 | 20.6 | +| 102 | 품목기준관리 테스트 | ✅ | 14 | 13 | 0 | 10.6 | +| 103 | 로그인 테스트 (끝판왕) | ✅ | 24 | 21 | 0 | 13.3 | +| 104 | 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.0 | +| 105 | 입고관리 테스트 | ✅ | 25 | 19 | 0 | 17.7 | +| 106 | 재고현황 테스트 | ✅ | 19 | 16 | 0 | 10.2 | +| 107 | 다중 품목 등록 + 자동계산 + 품목삭제 재계산: 매출관리 | ✅ | 22 | 22 | 0 | 44.9 | +| 108 | 페이지네이션 & 정렬 검증: 회계 | ✅ | 17 | 17 | 0 | 39.3 | +| 109 | 페이지네이션 & 정렬 검증: 인사/게시판 | ✅ | 11 | 11 | 0 | 27.8 | +| 110 | 페이지네이션 & 정렬 검증: 판매 | ✅ | 17 | 17 | 0 | 37.3 | +| 111 | PDF 다운로드 전체 검사 | ✅ | 5 | 5 | 0 | 1.2 | +| 112 | 성능 측정: 회계관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 113 | 성능 측정: 회계관리 > 입금관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 114 | 성능 측정: 회계관리 > 매입관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 115 | 성능 측정: 회계관리 > 매출관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 116 | 성능 측정: 인사관리 > 근태관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 117 | 성능 측정: 인사관리 > 부서관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 118 | 성능 측정: 인사관리 > 사원관리 | ✅ | 5 | 5 | 0 | 9.2 | +| 119 | 성능 측정: 인사관리 > 급여관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 120 | 성능 측정: 자재관리 > 입고관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 121 | 성능 측정: 자재관리 > 재고현황 | ✅ | 5 | 5 | 0 | 9.1 | +| 122 | 성능 측정: 생산관리 > 품목관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 123 | 성능 측정: 생산관리 > 작업지시 | ✅ | 5 | 5 | 0 | 9.1 | +| 124 | 성능 측정: 생산관리 > 작업실적 | ✅ | 5 | 5 | 0 | 9.0 | +| 125 | 성능 측정: 판매관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 126 | 성능 측정: 판매관리 > 견적관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 127 | 성능 측정: 판매관리 > 수주관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 128 | 성능 측정: 판매관리 > 단가관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 129 | 생산 현황판 테스트 | ✅ | 12 | 10 | 0 | 12.0 | +| 130 | 생산품목관리 테스트 | ✅ | 14 | 13 | 0 | 10.6 | +| 131 | 작업지시 CRUD + 필드검증 + API확인: 생산관리 | ✅ | 30 | 30 | 0 | 41.6 | +| 132 | 작업실적 테스트 | ✅ | 23 | 19 | 0 | 16.7 | +| 133 | 작업자 화면 테스트 | ✅ | 14 | 13 | 0 | 10.6 | +| 134 | 발주관리 테스트 | ✅ | 12 | 10 | 0 | 14.0 | +| 135 | 구매 단가관리 테스트 | ✅ | 11 | 8 | 0 | 20.3 | +| 136 | 구매현황 테스트 | ✅ | 10 | 9 | 0 | 12.6 | +| 137 | 구매관리 거래처관리 테스트 | ✅ | 11 | 9 | 0 | 14.0 | +| 138 | 품질인정심사 시스템 테스트 | ✅ | 14 | 14 | 0 | 9.6 | +| 139 | 제품검사관리 테스트 | ✅ | 25 | 19 | 0 | 17.3 | +| 140 | 실적신고관리 테스트 | ✅ | 12 | 11 | 0 | 10.8 | +| 141 | 입고관리 테스트 | ✅ | 9 | 9 | 0 | 9.8 | +| 142 | 참조함 E2E 테스트 | ✅ | 40 | 37 | 0 | 27.6 | +| 143 | 새로고침 데이터 유지 검증: 어음관리 | ✅ | 18 | 18 | 0 | 45.6 | +| 144 | 새로고침 데이터 유지 검증: 입금관리 | ✅ | 16 | 16 | 0 | 51.7 | +| 145 | 새로고침 데이터 유지 검증: 매출관리 | ✅ | 16 | 16 | 0 | 49.9 | +| 146 | 새로고침 데이터 유지 검증: 자유게시판 | ✅ | 19 | 19 | 0 | 55.8 | +| 147 | 판매거래처관리 테스트 | ✅ | 24 | 19 | 0 | 18.8 | +| 148 | Full CRUD 테스트: 매출관리 | ✅ | 23 | 23 | 0 | 62.3 | +| 149 | 수주관리 CRUD + 계산검증 테스트 | ✅ | 32 | 32 | 0 | 48.5 | +| 150 | 단가관리 테스트 | ✅ | 27 | 24 | 0 | 14.5 | +| 151 | 견적관리 CRUD + 계산검증 테스트 | ✅ | 32 | 31 | 0 | 45.2 | +| 152 | 현장관리 테스트 | ✅ | 11 | 9 | 0 | 14.0 | +| 153 | 기안함 검색 버그 상세 검증 | ✅ | 11 | 11 | 0 | 25.3 | +| 154 | 급여관리 검색 버그 상세 검증 | ✅ | 10 | 10 | 0 | 27.2 | +| 155 | 검색/필터/페이지네이션 테스트: 매출관리 | ✅ | 18 | 18 | 0 | 32.7 | +| 156 | 검색 기능 동작 검증: 회계 | ✅ | 20 | 20 | 0 | 52.4 | +| 157 | 검색 기능 감사: 회계관리 (1/6) | ✅ | 20 | 20 | 0 | 43.7 | +| 158 | 검색 기능 감사: 회계관리2+인사관리 (2/6) | ✅ | 20 | 20 | 0 | 36.5 | +| 159 | 검색 기능 감사: 게시판/고객센터/설정1 (5/6) | ✅ | 20 | 20 | 0 | 36.9 | +| 160 | 검색 기능 감사: 생산/품목/품질/자재 (3/6) | ✅ | 20 | 20 | 0 | 30.1 | +| 161 | 검색 기능 감사: 판매/출고/결재 (4/6) | ✅ | 16 | 16 | 0 | 37.9 | +| 162 | 검색 기능 감사: 설정2 (6/6) | ✅ | 14 | 14 | 0 | 23.7 | +| 163 | 검색 기능 동작 검증: 인사/게시판 | ✅ | 13 | 13 | 0 | 39.6 | +| 164 | 검색 기능 동작 검증: 판매 | ✅ | 20 | 20 | 0 | 40.9 | +| 165 | 검색 옵션 전수 테스트: 회계거래처/입금/출금 (1/10) | ✅ | 11 | 11 | 0 | 91.1 | +| 166 | 검색 옵션 전수 테스트: 매입/매출/카드내역 (2/10) | ✅ | 11 | 11 | 0 | 85.1 | +| 167 | 검색 옵션 전수 테스트: 어음/추심/계좌 (3/11) | ✅ | 11 | 11 | 0 | 107.1 | +| 168 | 검색 옵션 전수 테스트: 미수금/결제/지출예상 (4/11) | ✅ | 11 | 11 | 0 | 50.5 | +| 169 | 검색 옵션 전수 테스트: 결재관리 (6/10) | ✅ | 11 | 11 | 0 | 75.2 | +| 170 | 검색 옵션 전수 테스트: 게시판/고객센터 (5/10) | ✅ | 19 | 19 | 0 | 85.0 | +| 171 | 검색 옵션 전수 테스트: 인사관리 전체 (4/10) | ✅ | 27 | 27 | 0 | 107.0 | +| 172 | 검색 옵션 전수 테스트: 생산/품목관리 (8/11) | ✅ | 19 | 19 | 0 | 49.5 | +| 173 | 검색 옵션 전수 테스트: 품질/자재관리 (9/10) | ✅ | 15 | 15 | 0 | 73.9 | +| 174 | 검색 옵션 전수 테스트: 판매관리/출고 (7/11) | ✅ | 19 | 19 | 0 | 41.4 | +| 175 | 검색 옵션 전수 테스트: 설정 (10/11) | ✅ | 19 | 19 | 0 | 40.3 | +| 176 | 계정정보 테스트 | ✅ | 16 | 14 | 0 | 11.3 | +| 177 | 근태설정 테스트 | ✅ | 16 | 13 | 0 | 10.1 | +| 178 | 계좌관리 테스트 | ✅ | 23 | 21 | 0 | 12.3 | +| 179 | 바로빌연동관리 테스트 | ✅ | 8 | 6 | 0 | 11.6 | +| 180 | 달력관리 테스트 | ✅ | 8 | 7 | 0 | 10.6 | +| 181 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.0 | +| 182 | 회사정보 테스트 | ✅ | 16 | 13 | 0 | 13.1 | +| 183 | 알림설정 테스트 | ✅ | 16 | 13 | 0 | 12.5 | +| 184 | 권한관리 테스트 | ✅ | 20 | 18 | 0 | 12.4 | +| 185 | 팝업관리 테스트 | ✅ | 23 | 21 | 0 | 14.0 | +| 186 | 직책관리 테스트 | ✅ | 12 | 11 | 0 | 10.9 | +| 187 | 직급관리 테스트 | ✅ | 12 | 11 | 0 | 10.9 | +| 188 | 구독관리 테스트 | ✅ | 16 | 12 | 0 | 12.7 | +| 189 | 휴가정책 테스트 | ✅ | 16 | 15 | 0 | 8.9 | +| 190 | 근무일정 테스트 | ✅ | 16 | 15 | 0 | 9.9 | +| 191 | 출고관리 테스트 | ✅ | 13 | 11 | 0 | 18.2 | +| 192 | 점검표 관리 테스트 | ✅ | 11 | 8 | 0 | 17.7 | +| 193 | 단가배포관리 테스트 | ✅ | 11 | 8 | 0 | 17.8 | +| 194 | 공정관리 테스트 | ✅ | 12 | 9 | 0 | 17.7 | +| 195 | 단가표관리 테스트 | ✅ | 12 | 9 | 0 | 17.7 | +| 196 | 시스템 대시보드 위젯/통계/현황판/자금현황/지출예상/설정 테스트 | ✅ | 20 | 19 | 0 | 11.0 | +| 197 | Test bills 14 steps | ✅ | 14 | 14 | 0 | 61.7 | +| 198 | Test bills page minimal | ✅ | 3 | 3 | 0 | 7.1 | +| 199 | 거래처원장 테스트 | ✅ | 34 | 30 | 0 | 20.6 | +| 200 | 거래처관리 검색/필터/상세/수정/복원 + 네거티브 + 섹션검증: 회계관리 | ✅ | 36 | 36 | 0 | 46.3 | +| 201 | 출금관리 테스트 | ✅ | 21 | 20 | 0 | 15.7 | +| 202 | 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 | ✅ | 15 | 15 | 0 | 29.7 | +| 203 | 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 | ✅ | 14 | 14 | 0 | 37.7 | +| 204 | 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 | ✅ | 15 | 15 | 0 | 39.0 | +| 205 | 비즈니스 워크플로우: 구매→매입 흐름 | ✅ | 7 | 7 | 0 | 21.9 | +| 206 | 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 | ✅ | 22 | 22 | 0 | 27.2 | + +## 비즈니스 워크플로우 상세 + +### ✅ 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 +- 스텝: 15/15 성공 | 소요: 29.7초 +- 단계: CAPTURE_POST(✅) → CHECK_DRAFTS(✅) → CHECK_APPROVALS(✅) → CHECK_REFERENCES(✅) + +### ✅ 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 +- 스텝: 14/14 성공 | 소요: 37.7초 +- 단계: CAPTURE_EMPLOYEE(✅) → CHECK_DEPARTMENTS(✅) → VERIFY_EMPLOYEE_ATTEND(✅) → VERIFY_EMPLOYEE_SALARY(✅) + +### ✅ 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 +- 스텝: 15/15 성공 | 소요: 39.0초 +- 단계: CAPTURE_ITEM(✅) → VERIFY_ITEM_RECEIVING(✅) → VERIFY_ITEM_STOCK(✅) → CHECK_WITHDRAWAL(✅) + +### ✅ 비즈니스 워크플로우: 구매→매입 흐름 +- 스텝: 7/7 성공 | 소요: 21.9초 +- 단계: CAPTURE_VENDOR(✅) → VERIFY_VENDOR_ACC(✅) + +### ✅ 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 +- 스텝: 22/22 성공 | 소요: 27.2초 +- 단계: INIT(✅) → CAPTURE_CLIENT(✅) → VERIFY(✅) → CAPTURE_PRICE_ITEM(✅) → VERIFY(✅) → CHECK_ORDERS(✅) → VERIFY(✅) → CHECK_SALES(✅) → VERIFY(✅) → VERIFY(✅) → SUMMARY(✅) + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 회계관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 회계관리 > 입금관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매입관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매출관리 | - | - | - | - | +| 성능 측정: 인사관리 > 근태관리 | - | - | - | - | +| 성능 측정: 인사관리 > 부서관리 | - | - | - | - | +| 성능 측정: 인사관리 > 사원관리 | - | - | - | - | +| 성능 측정: 인사관리 > 급여관리 | - | - | - | - | +| 성능 측정: 자재관리 > 입고관리 | - | - | - | - | +| 성능 측정: 자재관리 > 재고현황 | - | - | - | - | +| 성능 측정: 생산관리 > 품목관리 | - | - | - | - | +| 성능 측정: 생산관리 > 작업지시 | - | - | - | - | +| 성능 측정: 생산관리 > 작업실적 | - | - | - | - | +| 성능 측정: 판매관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 판매관리 > 견적관리 | - | - | - | - | +| 성능 측정: 판매관리 > 수주관리 | - | - | - | - | +| 성능 측정: 판매관리 > 단가관리 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 회계관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 입금관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매입관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매출관리 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 결재함 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 기안함 | - | - | - | - | - | +| 접근성 검사: 게시판 > 자유게시판 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 근태관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 부서관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 사원관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 급여관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 입고관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 재고현황 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 품목관리 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 작업지시 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 견적관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 수주관리 | - | - | - | - | - | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-41-16.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-41-16.md new file mode 100644 index 0000000..20b6d6e --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-41-16.md @@ -0,0 +1,24 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_19-41-16 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 29 | 21 | 4 | 41.2 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- **진단**: element_timeout → 요소 대기 타임아웃. 페이지 로드 지연 또는 셀렉터 불일치 +- Step 7 ([CREATE] 등록 다이얼로그 대기): Step timeout (>3s): [CREATE] 등록 다이얼로그 대기 +- Step 18 ([UPDATE] 수정 다이얼로그 대기): Step timeout (>3s): [UPDATE] 수정 다이얼로그 대기 +- Step 20 ([UPDATE] 수정 버튼 클릭): 수정 버튼 없음 +- Step 24 ([DELETE] 삭제 다이얼로그 대기): Step timeout (>3s): [DELETE] 삭제 다이얼로그 대기 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-48-19.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-48-19.md new file mode 100644 index 0000000..6e5b993 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-48-19.md @@ -0,0 +1,20 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_19-48-19 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 29 | 24 | 1 | 41.1 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- Step 20 ([UPDATE] 수정 버튼 클릭): 수정 버튼 없음 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-55-12.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-55-12.md new file mode 100644 index 0000000..3aa081e --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_19-55-12.md @@ -0,0 +1,21 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_19-55-12 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 29 | 23 | 2 | 42.4 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- Step 20 ([UPDATE] 수정 버튼 클릭): 다이얼로그 미열림 +- Step 28 ([DELETE] 목록에서 삭제 확인): evaluate returned ok:false diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-03-59.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-03-59.md new file mode 100644 index 0000000..32726c0 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-03-59.md @@ -0,0 +1,21 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-03-59 +**총 소요 시간**: 0.6분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 20 | 15 | 2 | 37.9 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- Step 12 ([UPDATE] 일정명 수정 + 수정 버튼 클릭): 다이얼로그 미열림 +- Step 19 ([DELETE] 목록에서 삭제 확인): evaluate returned ok:false diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-18-14.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-18-14.md new file mode 100644 index 0000000..fb7ab44 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-18-14.md @@ -0,0 +1,20 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-18-14 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 20 | 16 | 1 | 42.4 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- Step 12 ([UPDATE] 일정명 수정 + 수정 버튼 클릭): 다이얼로그 미열림 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-24-04.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-24-04.md new file mode 100644 index 0000000..99f045b --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-24-04.md @@ -0,0 +1,20 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-24-04 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 20 | 16 | 1 | 43.5 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- Step 12 ([UPDATE] 일정명 수정 + 수정 버튼 클릭): 다이얼로그 미열림 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-29-13.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-29-13.md new file mode 100644 index 0000000..14b6152 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-29-13.md @@ -0,0 +1,20 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-29-13 +**총 소요 시간**: 0.9분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ❌ | 20 | 16 | 1 | 55.9 | + +## 실패 시나리오 상세 + +### ❌ 달력 일정 CRUD 테스트 (settings-calendar-crud) +- Step 12 ([UPDATE] 일정명 수정 + 수정 버튼 클릭): 다이얼로그 미열림 (재시도 포함) diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-35-37.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-35-37.md new file mode 100644 index 0000000..9f2796a --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-35-37.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-35-37 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 달력 일정 CRUD 테스트 | ✅ | 20 | 17 | 0 | 44.4 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-38-56.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-38-56.md new file mode 100644 index 0000000..996a217 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-38-56.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-38-56 +**총 소요 시간**: 0.7분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 수주 일괄삭제 테스트 | ✅ | 20 | 20 | 0 | 40.0 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-41-41.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-41-41.md new file mode 100644 index 0000000..1bd1599 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-41-41.md @@ -0,0 +1,21 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-41-41 +**총 소요 시간**: 0.3분 +**전체 시나리오**: 1개 | **성공**: 0개 | **실패**: 1개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 0 | 1 | 0% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 급여 장기요양보험 필드 검증 테스트 | ❌ | 16 | 15 | 1 | 20.1 | + +## 실패 시나리오 상세 + +### ❌ 급여 장기요양보험 필드 검증 테스트 (hr-salary-long-term-care) +- **진단**: element_timeout → 요소 대기 타임아웃. 페이지 로드 지연 또는 셀렉터 불일치 +- Step 12 ([CREATE] 등록 다이얼로그 대기): Step timeout (>3s): [CREATE] 등록 다이얼로그 대기 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-45-21.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-45-21.md new file mode 100644 index 0000000..6433b3f --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_20-45-21.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_20-45-21 +**총 소요 시간**: 0.3분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 급여 장기요양보험 필드 검증 테스트 | ✅ | 16 | 16 | 0 | 18.8 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_22-17-45.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_22-17-45.md new file mode 100644 index 0000000..7ff1d6e --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_22-17-45.md @@ -0,0 +1,15 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_22-17-45 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 제품검사관리 테스트 | ✅ | 16 | 16 | 0 | 13.7 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_23-33-30.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_23-33-30.md new file mode 100644 index 0000000..d1d063d --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-03_23-33-30.md @@ -0,0 +1,19 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-03_23-33-30 +**총 소요 시간**: 2.3분 +**전체 시나리오**: 5개 | **성공**: 5개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 5 | 5 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 입력 필드 전수 테스트: 입고/제품검사 (5/5) | ✅ | 13 | 13 | 0 | 30.7 | +| 2 | 품질인정심사 시스템 테스트 | ✅ | 14 | 14 | 0 | 9.6 | +| 3 | 제품검사관리 테스트 | ✅ | 17 | 17 | 0 | 12.1 | +| 4 | 실적신고관리 테스트 | ✅ | 12 | 12 | 0 | 9.6 | +| 5 | 검색 옵션 전수 테스트: 품질/자재관리 (9/10) | ✅ | 15 | 15 | 0 | 73.8 | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_11-35-53.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_11-35-53.md new file mode 100644 index 0000000..f0d6bd4 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_11-35-53.md @@ -0,0 +1,292 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-04_11-35-53 +**총 소요 시간**: 89.8분 +**전체 시나리오**: 209개 | **성공**: 209개 | **실패**: 0개 + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 18 | 18 | 0 | 100% | +| 기능 테스트 | 152 | 152 | 0 | 100% | +| 엣지 케이스 | 17 | 17 | 0 | 100% | +| 성능 테스트 | 17 | 17 | 0 | 100% | +| 비즈니스 워크플로우 | 5 | 5 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 회계관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.5 | +| 2 | 접근성 검사: 회계관리 > 입금관리 | ✅ | 4 | 3 | 0 | 12.9 | +| 3 | 접근성 검사: 회계관리 > 매입관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 4 | 접근성 검사: 회계관리 > 매출관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 5 | 접근성 검사: 결재관리 > 결재함 | ✅ | 4 | 3 | 0 | 12.3 | +| 6 | 접근성 검사: 결재관리 > 기안함 | ✅ | 4 | 3 | 0 | 12.3 | +| 7 | 접근성 검사: 게시판 > 자유게시판 | ✅ | 4 | 3 | 0 | 12.3 | +| 8 | 접근성 검사: 인사관리 > 근태관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 9 | 접근성 검사: 인사관리 > 부서관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 10 | 접근성 검사: 인사관리 > 사원관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 11 | 접근성 검사: 인사관리 > 급여관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 12 | 접근성 검사: 자재관리 > 입고관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 13 | 접근성 검사: 자재관리 > 재고현황 | ✅ | 4 | 4 | 0 | 11.3 | +| 14 | 접근성 검사: 생산관리 > 품목관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 15 | 접근성 검사: 생산관리 > 작업지시 | ✅ | 4 | 3 | 0 | 12.4 | +| 16 | 접근성 검사: 판매관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.3 | +| 17 | 접근성 검사: 판매관리 > 견적관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 18 | 접근성 검사: 판매관리 > 수주관리 | ✅ | 4 | 3 | 0 | 12.4 | +| 19 | 악성채권추심관리 테스트 | ✅ | 24 | 22 | 0 | 10.4 | +| 20 | 계좌입출금내역 테스트 | ✅ | 19 | 16 | 0 | 10.3 | +| 21 | 어음관리 테스트 | ✅ | 24 | 18 | 0 | 19.6 | +| 22 | 카드사용내역 테스트 | ✅ | 19 | 16 | 0 | 10.3 | +| 23 | 회계거래처관리 테스트 | ✅ | 23 | 20 | 0 | 16.5 | +| 24 | 일일 일보 테스트 | ✅ | 10 | 10 | 0 | 11.6 | +| 25 | 입금관리 테스트 | ✅ | 25 | 19 | 0 | 19.5 | +| 26 | 지출예상내역서 테스트 | ✅ | 19 | 14 | 0 | 11.6 | +| 27 | 상품권관리 테스트 | ✅ | 11 | 9 | 0 | 12.2 | +| 28 | 일반전표입력 테스트 | ✅ | 12 | 10 | 0 | 14.1 | +| 29 | 결제내역 테스트 | ✅ | 19 | 15 | 0 | 13.2 | +| 30 | 매입관리 테스트 | ✅ | 18 | 14 | 0 | 13.6 | +| 31 | 미수금현황 테스트 | ✅ | 19 | 16 | 0 | 11.8 | +| 32 | 매출관리 테스트 | ✅ | 18 | 14 | 0 | 13.7 | +| 33 | 세금계산서발행 테스트 | ✅ | 11 | 10 | 0 | 10.9 | +| 34 | 세금계산서관리 테스트 | ✅ | 11 | 10 | 0 | 10.9 | +| 35 | 출금관리 테스트 | ✅ | 25 | 19 | 0 | 19.5 | +| 36 | API 건강성 감사: 회계 | ✅ | 39 | 39 | 0 | 46.3 | +| 37 | API 건강성 감사: 생산/기타 | ✅ | 35 | 35 | 0 | 46.9 | +| 38 | API 건강성 감사: 판매/인사 | ✅ | 35 | 35 | 0 | 46.9 | +| 39 | 결재함 E2E 테스트 | ✅ | 25 | 23 | 0 | 25.4 | +| 40 | 근태현황 출퇴근 테스트 | ✅ | 17 | 17 | 0 | 12.7 | +| 41 | 연속 등록 테스트: 어음관리 | ✅ | 39 | 39 | 0 | 96.2 | +| 42 | 연속 등록 테스트: 입금관리 | ✅ | 39 | 39 | 0 | 102.2 | +| 43 | 연속 등록 테스트: 자유게시판 | ✅ | 39 | 39 | 0 | 94.9 | +| 44 | 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 | ✅ | 14 | 14 | 0 | 26.8 | +| 45 | 게시판 관리 테스트 | ✅ | 22 | 22 | 0 | 11.6 | +| 46 | 게시판 테스트 페이지 테스트 | ✅ | 13 | 11 | 0 | 14.5 | +| 47 | 설정 - 회사정보 | ✅ | 31 | 18 | 0 | 31.6 | +| 48 | Create+Delete 테스트: 어음관리 | ✅ | 12 | 12 | 0 | 38.5 | +| 49 | Create+Delete 테스트: 입금관리 | ✅ | 12 | 12 | 0 | 35.8 | +| 50 | Create+Delete 테스트: 자유게시판 | ✅ | 15 | 15 | 0 | 42.2 | +| 51 | 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) | ✅ | 15 | 15 | 0 | 39.1 | +| 52 | 이벤트 게시판 테스트 | ✅ | 19 | 14 | 0 | 13.8 | +| 53 | FAQ 테스트 | ✅ | 16 | 12 | 0 | 11.0 | +| 54 | 1:1 문의 테스트 | ✅ | 12 | 10 | 0 | 14.4 | +| 55 | 공지사항 테스트 | ✅ | 19 | 15 | 0 | 13.8 | +| 56 | 부서관리 테스트 | ✅ | 16 | 12 | 0 | 13.0 | +| 57 | 입금관리 테스트 | ✅ | 21 | 20 | 0 | 15.7 | +| 58 | 상세 조회 왕복 검증: 회계 | ✅ | 23 | 23 | 0 | 32.8 | +| 59 | 상세 조회 왕복 검증: 인사/게시판 | ✅ | 15 | 15 | 0 | 25.7 | +| 60 | 상세 조회 왕복 검증: 판매 | ✅ | 23 | 23 | 0 | 32.7 | +| 61 | 목록↔상세 필드별 대조 검증: 매출관리 | ✅ | 12 | 12 | 0 | 23.2 | +| 62 | 기안함 테스트 | ✅ | 17 | 15 | 0 | 11.9 | +| 63 | 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) | ✅ | 14 | 14 | 0 | 23.6 | +| 64 | 엣지 케이스: 경계값 입력 (회계 > 입금관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 65 | 엣지 케이스: 경계값 입력 (인사 > 사원관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 66 | 엣지 케이스: 경계값 입력 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 67 | 엣지 케이스: 동시 액션 (인사 > 근태관리) | ✅ | 5 | 5 | 0 | 13.8 | +| 68 | 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) | ✅ | 7 | 7 | 0 | 19.1 | +| 69 | 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.1 | +| 70 | 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) | ✅ | 7 | 7 | 0 | 19.2 | +| 71 | 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.2 | +| 72 | 엣지 케이스: 숫자 경계값 (회계 > 입금관리) | ✅ | 13 | 13 | 0 | 23.8 | +| 73 | 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) | ✅ | 10 | 10 | 0 | 27.3 | +| 74 | 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) | ✅ | 6 | 6 | 0 | 15.8 | +| 75 | 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.9 | +| 76 | 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.9 | +| 77 | 엣지 케이스: 특수문자 검색 (게시판 > 자유게시판) | ✅ | 14 | 14 | 0 | 32.1 | +| 78 | 엣지 케이스: 특수문자 검색 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 32.1 | +| 79 | 엣지 케이스: 유니코드 입력 (게시판 > 자유게시판) | ✅ | 10 | 10 | 0 | 20.4 | +| 80 | 직원 등록 테스트 | ✅ | 22 | 21 | 0 | 30.9 | +| 81 | 폼 유효성 검증 감사: 회계 (어음/입금/출금) | ✅ | 20 | 20 | 0 | 43.2 | +| 82 | 폼 유효성 검증 감사: 생산/게시판 | ✅ | 13 | 13 | 0 | 25.1 | +| 83 | 폼 유효성 검증 감사: 판매 (거래처/수주/견적) | ✅ | 20 | 20 | 0 | 43.2 | +| 84 | 자유게시판 E2E 테스트 | ✅ | 22 | 22 | 0 | 13.1 | +| 85 | Full CRUD 테스트: 어음관리 (Enhanced) | ✅ | 32 | 32 | 0 | 57.1 | +| 86 | Full CRUD 테스트: 입금관리 (금액포맷+상세대조+API검증) | ✅ | 35 | 35 | 0 | 56.0 | +| 87 | Full CRUD 테스트: 매출관리 (계산검증+상세대조+API검증) | ✅ | 33 | 33 | 0 | 55.4 | +| 88 | Full CRUD 테스트: 자유게시판 (Enhanced) | ✅ | 33 | 33 | 0 | 64.0 | +| 89 | 근태관리 테스트 | ✅ | 14 | 14 | 0 | 10.3 | +| 90 | 근태현황 테스트 | ✅ | 19 | 14 | 0 | 11.9 | +| 91 | 부서관리 테스트 | ✅ | 14 | 14 | 0 | 9.9 | +| 92 | 사원관리 테스트 | ✅ | 22 | 22 | 0 | 13.4 | +| 93 | 급여 장기요양보험 필드 검증 테스트 | ✅ | 16 | 16 | 0 | 18.6 | +| 94 | 급여관리 테스트 | ✅ | 22 | 22 | 0 | 13.2 | +| 95 | 휴가관리 테스트 | ✅ | 25 | 19 | 0 | 19.0 | +| 96 | 입력 필드 전수 테스트: 어음/입금/출금 (1/5) | ✅ | 20 | 20 | 0 | 54.0 | +| 97 | 입력 필드 전수 테스트: 거래처(회계)/악성채권 (2/5) | ✅ | 13 | 13 | 0 | 60.7 | +| 98 | 입력 필드 전수 테스트: 입고/제품검사 (5/5) | ✅ | 13 | 13 | 0 | 30.7 | +| 99 | 입력 필드 전수 테스트: 작업지시/작업실적 (4/5) | ✅ | 13 | 13 | 0 | 20.7 | +| 100 | 입력 필드 전수 테스트: 거래처(판매)/수주/견적 (3/5) | ✅ | 20 | 20 | 0 | 41.7 | +| 101 | 재고현황 테스트 | ✅ | 12 | 12 | 0 | 10.1 | +| 102 | 품목관리 테스트 | ✅ | 16 | 11 | 0 | 20.6 | +| 103 | 품목기준관리 테스트 | ✅ | 14 | 13 | 0 | 10.6 | +| 104 | 로그인 테스트 (끝판왕) | ✅ | 24 | 21 | 0 | 13.3 | +| 105 | 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 13.9 | +| 106 | 입고관리 테스트 | ✅ | 25 | 19 | 0 | 17.8 | +| 107 | 재고현황 테스트 | ✅ | 19 | 16 | 0 | 10.2 | +| 108 | 다중 품목 등록 + 자동계산 + 품목삭제 재계산: 매출관리 | ✅ | 22 | 22 | 0 | 44.8 | +| 109 | 페이지네이션 & 정렬 검증: 회계 | ✅ | 17 | 17 | 0 | 39.3 | +| 110 | 페이지네이션 & 정렬 검증: 인사/게시판 | ✅ | 11 | 11 | 0 | 27.8 | +| 111 | 페이지네이션 & 정렬 검증: 판매 | ✅ | 17 | 17 | 0 | 37.2 | +| 112 | PDF 다운로드 전체 검사 | ✅ | 5 | 5 | 0 | 1.2 | +| 113 | 성능 측정: 회계관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 114 | 성능 측정: 회계관리 > 입금관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 115 | 성능 측정: 회계관리 > 매입관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 116 | 성능 측정: 회계관리 > 매출관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 117 | 성능 측정: 인사관리 > 근태관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 118 | 성능 측정: 인사관리 > 부서관리 | ✅ | 5 | 5 | 0 | 9.2 | +| 119 | 성능 측정: 인사관리 > 사원관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 120 | 성능 측정: 인사관리 > 급여관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 121 | 성능 측정: 자재관리 > 입고관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 122 | 성능 측정: 자재관리 > 재고현황 | ✅ | 5 | 5 | 0 | 9.1 | +| 123 | 성능 측정: 생산관리 > 품목관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 124 | 성능 측정: 생산관리 > 작업지시 | ✅ | 5 | 5 | 0 | 9.0 | +| 125 | 성능 측정: 생산관리 > 작업실적 | ✅ | 5 | 5 | 0 | 9.1 | +| 126 | 성능 측정: 판매관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 127 | 성능 측정: 판매관리 > 견적관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 128 | 성능 측정: 판매관리 > 수주관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 129 | 성능 측정: 판매관리 > 단가관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 130 | 생산 현황판 테스트 | ✅ | 12 | 10 | 0 | 12.0 | +| 131 | 생산품목관리 테스트 | ✅ | 14 | 13 | 0 | 10.6 | +| 132 | 작업지시 CRUD + 필드검증 + API확인: 생산관리 | ✅ | 30 | 30 | 0 | 41.6 | +| 133 | 작업실적 테스트 | ✅ | 23 | 19 | 0 | 16.7 | +| 134 | 작업자 화면 테스트 | ✅ | 14 | 13 | 0 | 10.6 | +| 135 | 발주관리 테스트 | ✅ | 12 | 10 | 0 | 13.9 | +| 136 | 구매 단가관리 테스트 | ✅ | 11 | 8 | 0 | 20.2 | +| 137 | 구매현황 테스트 | ✅ | 10 | 9 | 0 | 12.6 | +| 138 | 구매관리 거래처관리 테스트 | ✅ | 11 | 9 | 0 | 14.1 | +| 139 | 품질인정심사 시스템 테스트 | ✅ | 14 | 14 | 0 | 9.6 | +| 140 | 제품검사관리 테스트 | ✅ | 17 | 17 | 0 | 12.6 | +| 141 | 실적신고관리 테스트 | ✅ | 12 | 12 | 0 | 9.7 | +| 142 | 입고관리 테스트 | ✅ | 9 | 9 | 0 | 9.8 | +| 143 | 참조함 E2E 테스트 | ✅ | 40 | 37 | 0 | 27.4 | +| 144 | 새로고침 데이터 유지 검증: 어음관리 | ✅ | 18 | 18 | 0 | 45.6 | +| 145 | 새로고침 데이터 유지 검증: 입금관리 | ✅ | 16 | 16 | 0 | 51.7 | +| 146 | 새로고침 데이터 유지 검증: 매출관리 | ✅ | 16 | 16 | 0 | 49.8 | +| 147 | 새로고침 데이터 유지 검증: 자유게시판 | ✅ | 19 | 19 | 0 | 55.7 | +| 148 | 판매거래처관리 테스트 | ✅ | 24 | 19 | 0 | 18.8 | +| 149 | Full CRUD 테스트: 매출관리 | ✅ | 23 | 23 | 0 | 62.3 | +| 150 | 수주 일괄삭제 테스트 | ✅ | 20 | 20 | 0 | 39.7 | +| 151 | 수주관리 CRUD + 계산검증 테스트 | ✅ | 32 | 32 | 0 | 48.3 | +| 152 | 단가관리 테스트 | ✅ | 27 | 24 | 0 | 14.5 | +| 153 | 견적관리 CRUD + 계산검증 테스트 | ✅ | 32 | 31 | 0 | 45.2 | +| 154 | 현장관리 테스트 | ✅ | 11 | 9 | 0 | 13.9 | +| 155 | 기안함 검색 버그 상세 검증 | ✅ | 11 | 11 | 0 | 25.2 | +| 156 | 급여관리 검색 버그 상세 검증 | ✅ | 10 | 10 | 0 | 27.2 | +| 157 | 검색/필터/페이지네이션 테스트: 매출관리 | ✅ | 18 | 18 | 0 | 32.7 | +| 158 | 검색 기능 동작 검증: 회계 | ✅ | 20 | 20 | 0 | 52.3 | +| 159 | 검색 기능 감사: 회계관리 (1/6) | ✅ | 20 | 20 | 0 | 43.5 | +| 160 | 검색 기능 감사: 회계관리2+인사관리 (2/6) | ✅ | 20 | 20 | 0 | 36.6 | +| 161 | 검색 기능 감사: 게시판/고객센터/설정1 (5/6) | ✅ | 20 | 20 | 0 | 36.8 | +| 162 | 검색 기능 감사: 생산/품목/품질/자재 (3/6) | ✅ | 20 | 20 | 0 | 30.3 | +| 163 | 검색 기능 감사: 판매/출고/결재 (4/6) | ✅ | 16 | 16 | 0 | 37.9 | +| 164 | 검색 기능 감사: 설정2 (6/6) | ✅ | 14 | 14 | 0 | 23.7 | +| 165 | 검색 기능 동작 검증: 인사/게시판 | ✅ | 13 | 13 | 0 | 39.7 | +| 166 | 검색 기능 동작 검증: 판매 | ✅ | 20 | 20 | 0 | 40.9 | +| 167 | 검색 옵션 전수 테스트: 회계거래처/입금/출금 (1/10) | ✅ | 11 | 11 | 0 | 91.0 | +| 168 | 검색 옵션 전수 테스트: 매입/매출/카드내역 (2/10) | ✅ | 11 | 11 | 0 | 84.9 | +| 169 | 검색 옵션 전수 테스트: 어음/추심/계좌 (3/11) | ✅ | 11 | 11 | 0 | 107.0 | +| 170 | 검색 옵션 전수 테스트: 미수금/결제/지출예상 (4/11) | ✅ | 11 | 11 | 0 | 50.3 | +| 171 | 검색 옵션 전수 테스트: 결재관리 (6/10) | ✅ | 11 | 11 | 0 | 75.0 | +| 172 | 검색 옵션 전수 테스트: 게시판/고객센터 (5/10) | ✅ | 19 | 19 | 0 | 84.8 | +| 173 | 검색 옵션 전수 테스트: 인사관리 전체 (4/10) | ✅ | 27 | 27 | 0 | 106.9 | +| 174 | 검색 옵션 전수 테스트: 생산/품목관리 (8/11) | ✅ | 19 | 19 | 0 | 49.7 | +| 175 | 검색 옵션 전수 테스트: 품질/자재관리 (9/10) | ✅ | 15 | 15 | 0 | 73.9 | +| 176 | 검색 옵션 전수 테스트: 판매관리/출고 (7/11) | ✅ | 19 | 19 | 0 | 41.3 | +| 177 | 검색 옵션 전수 테스트: 설정 (10/11) | ✅ | 19 | 19 | 0 | 40.2 | +| 178 | 계정정보 테스트 | ✅ | 16 | 14 | 0 | 11.4 | +| 179 | 근태설정 테스트 | ✅ | 16 | 13 | 0 | 10.0 | +| 180 | 계좌관리 테스트 | ✅ | 23 | 21 | 0 | 12.2 | +| 181 | 바로빌연동관리 테스트 | ✅ | 8 | 6 | 0 | 11.6 | +| 182 | 달력 일정 CRUD 테스트 | ✅ | 20 | 17 | 0 | 44.3 | +| 183 | 달력관리 테스트 | ✅ | 8 | 7 | 0 | 10.8 | +| 184 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.0 | +| 185 | 회사정보 테스트 | ✅ | 16 | 13 | 0 | 13.1 | +| 186 | 알림설정 테스트 | ✅ | 16 | 13 | 0 | 12.4 | +| 187 | 권한관리 테스트 | ✅ | 20 | 18 | 0 | 12.5 | +| 188 | 팝업관리 테스트 | ✅ | 23 | 21 | 0 | 13.9 | +| 189 | 직책관리 테스트 | ✅ | 12 | 11 | 0 | 11.0 | +| 190 | 직급관리 테스트 | ✅ | 12 | 11 | 0 | 10.9 | +| 191 | 구독관리 테스트 | ✅ | 16 | 12 | 0 | 12.7 | +| 192 | 휴가정책 테스트 | ✅ | 16 | 15 | 0 | 8.9 | +| 193 | 근무일정 테스트 | ✅ | 16 | 15 | 0 | 10.0 | +| 194 | 출고관리 테스트 | ✅ | 13 | 11 | 0 | 18.3 | +| 195 | 점검표 관리 테스트 | ✅ | 11 | 8 | 0 | 17.7 | +| 196 | 단가배포관리 테스트 | ✅ | 11 | 8 | 0 | 17.7 | +| 197 | 공정관리 테스트 | ✅ | 12 | 9 | 0 | 17.6 | +| 198 | 단가표관리 테스트 | ✅ | 12 | 9 | 0 | 17.7 | +| 199 | 시스템 대시보드 위젯/통계/현황판/자금현황/지출예상/설정 테스트 | ✅ | 20 | 19 | 0 | 10.9 | +| 200 | Test bills 14 steps | ✅ | 14 | 14 | 0 | 61.5 | +| 201 | Test bills page minimal | ✅ | 3 | 3 | 0 | 7.1 | +| 202 | 거래처원장 테스트 | ✅ | 34 | 30 | 0 | 20.5 | +| 203 | 거래처관리 검색/필터/상세/수정/복원 + 네거티브 + 섹션검증: 회계관리 | ✅ | 36 | 36 | 0 | 46.1 | +| 204 | 출금관리 테스트 | ✅ | 21 | 20 | 0 | 15.8 | +| 205 | 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 | ✅ | 15 | 15 | 0 | 29.7 | +| 206 | 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 | ✅ | 14 | 14 | 0 | 37.7 | +| 207 | 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 | ✅ | 15 | 15 | 0 | 39.0 | +| 208 | 비즈니스 워크플로우: 구매→매입 흐름 | ✅ | 7 | 7 | 0 | 21.9 | +| 209 | 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 | ✅ | 22 | 22 | 0 | 27.3 | + +## 비즈니스 워크플로우 상세 + +### ✅ 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 +- 스텝: 15/15 성공 | 소요: 29.7초 +- 단계: CAPTURE_POST(✅) → CHECK_DRAFTS(✅) → CHECK_APPROVALS(✅) → CHECK_REFERENCES(✅) + +### ✅ 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 +- 스텝: 14/14 성공 | 소요: 37.7초 +- 단계: CAPTURE_EMPLOYEE(✅) → CHECK_DEPARTMENTS(✅) → VERIFY_EMPLOYEE_ATTEND(✅) → VERIFY_EMPLOYEE_SALARY(✅) + +### ✅ 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 +- 스텝: 15/15 성공 | 소요: 39.0초 +- 단계: CAPTURE_ITEM(✅) → VERIFY_ITEM_RECEIVING(✅) → VERIFY_ITEM_STOCK(✅) → CHECK_WITHDRAWAL(✅) + +### ✅ 비즈니스 워크플로우: 구매→매입 흐름 +- 스텝: 7/7 성공 | 소요: 21.9초 +- 단계: CAPTURE_VENDOR(✅) → VERIFY_VENDOR_ACC(✅) + +### ✅ 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 +- 스텝: 22/22 성공 | 소요: 27.3초 +- 단계: INIT(✅) → CAPTURE_CLIENT(✅) → VERIFY(✅) → CAPTURE_PRICE_ITEM(✅) → VERIFY(✅) → CHECK_ORDERS(✅) → VERIFY(✅) → CHECK_SALES(✅) → VERIFY(✅) → VERIFY(✅) → SUMMARY(✅) + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 회계관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 회계관리 > 입금관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매입관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매출관리 | - | - | - | - | +| 성능 측정: 인사관리 > 근태관리 | - | - | - | - | +| 성능 측정: 인사관리 > 부서관리 | - | - | - | - | +| 성능 측정: 인사관리 > 사원관리 | - | - | - | - | +| 성능 측정: 인사관리 > 급여관리 | - | - | - | - | +| 성능 측정: 자재관리 > 입고관리 | - | - | - | - | +| 성능 측정: 자재관리 > 재고현황 | - | - | - | - | +| 성능 측정: 생산관리 > 품목관리 | - | - | - | - | +| 성능 측정: 생산관리 > 작업지시 | - | - | - | - | +| 성능 측정: 생산관리 > 작업실적 | - | - | - | - | +| 성능 측정: 판매관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 판매관리 > 견적관리 | - | - | - | - | +| 성능 측정: 판매관리 > 수주관리 | - | - | - | - | +| 성능 측정: 판매관리 > 단가관리 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 회계관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 입금관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매입관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매출관리 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 결재함 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 기안함 | - | - | - | - | - | +| 접근성 검사: 게시판 > 자유게시판 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 근태관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 부서관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 사원관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 급여관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 입고관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 재고현황 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 품목관리 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 작업지시 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 견적관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 수주관리 | - | - | - | - | - | diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-26-54.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-26-54.md new file mode 100644 index 0000000..f1f3fea --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-26-54.md @@ -0,0 +1,57 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-04_22-26-54 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 📉 (이전: 209/209 성공) + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 계좌입출금내역 테스트 | ✅ | 18 | 16 | 0 | 10.4 | + +## ⚠️ 불안정 테스트 (Flaky Tests) +최근 3일간 성공과 실패가 모두 발생한 시나리오: + +| 시나리오 | 성공 횟수 | 실패 횟수 | 안정성 | +|---------|----------|----------|--------| +| settings-calendar-crud | 3 | 7 | 🔴 30% | +| sales-management | 7 | 2 | 🟠 78% | +| hr-salary-long-term-care | 4 | 1 | 🟡 80% | +| reload-persist-acc-deposit | 7 | 1 | 🟡 88% | +| reload-persist-acc-sales | 7 | 1 | 🟡 88% | +| reload-persist-board | 7 | 1 | 🟡 88% | +| sales-client | 7 | 1 | 🟡 88% | +| sales-order-bulk-delete | 3 | 1 | 🟠 75% | +| sales-order | 7 | 1 | 🟡 88% | +| sales-pricing | 7 | 1 | 🟡 88% | +| sales-quotation | 7 | 1 | 🟡 88% | +| sales-site-mgmt | 7 | 1 | 🟡 88% | +| search-bug-draft | 11 | 1 | 🟡 92% | +| search-bug-salary | 11 | 1 | 🟡 92% | +| search-filter-acc-sales | 10 | 1 | 🟡 91% | +| search-function-acc | 11 | 1 | 🟡 92% | +| search-function-audit-acc1 | 10 | 1 | 🟡 91% | +| search-function-audit-acc2-hr | 10 | 1 | 🟡 91% | +| search-function-audit-boards | 10 | 1 | 🟡 91% | +| search-function-audit-production | 10 | 1 | 🟡 91% | +| search-function-audit-sales-approval | 10 | 1 | 🟡 91% | +| search-function-audit-settings | 10 | 1 | 🟡 91% | +| search-function-hr-board | 11 | 1 | 🟡 92% | +| search-function-sales | 11 | 1 | 🟡 92% | +| search-options-acc-1 | 10 | 1 | 🟡 91% | +| search-options-acc-2 | 10 | 1 | 🟡 91% | +| search-options-acc-3 | 10 | 1 | 🟡 91% | + +## 📊 트렌드 분석 +| 항목 | 이전 실행 | 현재 실행 | 변화 | +|------|---------|---------|------| +| 전체 | 209 | 1 | -208 | +| 성공 | 209 | 1 | 📉 -208 | +| 실패 | 0 | 0 | ➡️ 동일 | + +이전 실행: 2026-03-04_11-35-53 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-29-50.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-29-50.md new file mode 100644 index 0000000..861256d --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-29-50.md @@ -0,0 +1,57 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-04_22-29-50 +**총 소요 시간**: 0.2분 +**전체 시나리오**: 1개 | **성공**: 1개 | **실패**: 0개 ➡️ (이전: 1/1 성공) + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 기능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 카드사용내역 테스트 | ✅ | 18 | 16 | 0 | 10.2 | + +## ⚠️ 불안정 테스트 (Flaky Tests) +최근 3일간 성공과 실패가 모두 발생한 시나리오: + +| 시나리오 | 성공 횟수 | 실패 횟수 | 안정성 | +|---------|----------|----------|--------| +| settings-calendar-crud | 3 | 7 | 🔴 30% | +| sales-management | 7 | 2 | 🟠 78% | +| hr-salary-long-term-care | 4 | 1 | 🟡 80% | +| reload-persist-acc-deposit | 7 | 1 | 🟡 88% | +| reload-persist-acc-sales | 7 | 1 | 🟡 88% | +| reload-persist-board | 7 | 1 | 🟡 88% | +| sales-client | 7 | 1 | 🟡 88% | +| sales-order-bulk-delete | 3 | 1 | 🟠 75% | +| sales-order | 7 | 1 | 🟡 88% | +| sales-pricing | 7 | 1 | 🟡 88% | +| sales-quotation | 7 | 1 | 🟡 88% | +| sales-site-mgmt | 7 | 1 | 🟡 88% | +| search-bug-draft | 11 | 1 | 🟡 92% | +| search-bug-salary | 11 | 1 | 🟡 92% | +| search-filter-acc-sales | 10 | 1 | 🟡 91% | +| search-function-acc | 11 | 1 | 🟡 92% | +| search-function-audit-acc1 | 10 | 1 | 🟡 91% | +| search-function-audit-acc2-hr | 10 | 1 | 🟡 91% | +| search-function-audit-boards | 10 | 1 | 🟡 91% | +| search-function-audit-production | 10 | 1 | 🟡 91% | +| search-function-audit-sales-approval | 10 | 1 | 🟡 91% | +| search-function-audit-settings | 10 | 1 | 🟡 91% | +| search-function-hr-board | 11 | 1 | 🟡 92% | +| search-function-sales | 11 | 1 | 🟡 92% | +| search-options-acc-1 | 10 | 1 | 🟡 91% | +| search-options-acc-2 | 10 | 1 | 🟡 91% | +| search-options-acc-3 | 10 | 1 | 🟡 91% | + +## 📊 트렌드 분석 +| 항목 | 이전 실행 | 현재 실행 | 변화 | +|------|---------|---------|------| +| 전체 | 1 | 1 | +0 | +| 성공 | 1 | 1 | ➡️ 동일 | +| 실패 | 0 | 0 | ➡️ 동일 | + +이전 실행: 2026-03-04_22-26-54 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-30-10.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-30-10.md new file mode 100644 index 0000000..838a121 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-04_22-30-10.md @@ -0,0 +1,71 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-04_22-30-10 +**총 소요 시간**: 0.5분 +**전체 시나리오**: 3개 | **성공**: 3개 | **실패**: 0개 📈 (이전: 1/1 성공) + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 1 | 1 | 0 | 100% | +| 기능 테스트 | 1 | 1 | 0 | 100% | +| 성능 테스트 | 1 | 1 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 자재관리 > 재고현황 | ✅ | 4 | 4 | 0 | 11.4 | +| 2 | 재고현황 테스트 | ✅ | 18 | 16 | 0 | 10.1 | +| 3 | 성능 측정: 자재관리 > 재고현황 | ✅ | 5 | 5 | 0 | 9.1 | + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 자재관리 > 재고현황 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 자재관리 > 재고현황 | - | - | - | - | - | + +## ⚠️ 불안정 테스트 (Flaky Tests) +최근 3일간 성공과 실패가 모두 발생한 시나리오: + +| 시나리오 | 성공 횟수 | 실패 횟수 | 안정성 | +|---------|----------|----------|--------| +| settings-calendar-crud | 3 | 7 | 🔴 30% | +| sales-management | 7 | 2 | 🟠 78% | +| hr-salary-long-term-care | 4 | 1 | 🟡 80% | +| reload-persist-acc-deposit | 7 | 1 | 🟡 88% | +| reload-persist-acc-sales | 7 | 1 | 🟡 88% | +| reload-persist-board | 7 | 1 | 🟡 88% | +| sales-client | 7 | 1 | 🟡 88% | +| sales-order-bulk-delete | 3 | 1 | 🟠 75% | +| sales-order | 7 | 1 | 🟡 88% | +| sales-pricing | 7 | 1 | 🟡 88% | +| sales-quotation | 7 | 1 | 🟡 88% | +| sales-site-mgmt | 7 | 1 | 🟡 88% | +| search-bug-draft | 11 | 1 | 🟡 92% | +| search-bug-salary | 11 | 1 | 🟡 92% | +| search-filter-acc-sales | 10 | 1 | 🟡 91% | +| search-function-acc | 11 | 1 | 🟡 92% | +| search-function-audit-acc1 | 10 | 1 | 🟡 91% | +| search-function-audit-acc2-hr | 10 | 1 | 🟡 91% | +| search-function-audit-boards | 10 | 1 | 🟡 91% | +| search-function-audit-production | 10 | 1 | 🟡 91% | +| search-function-audit-sales-approval | 10 | 1 | 🟡 91% | +| search-function-audit-settings | 10 | 1 | 🟡 91% | +| search-function-hr-board | 11 | 1 | 🟡 92% | +| search-function-sales | 11 | 1 | 🟡 92% | +| search-options-acc-1 | 10 | 1 | 🟡 91% | +| search-options-acc-2 | 10 | 1 | 🟡 91% | +| search-options-acc-3 | 10 | 1 | 🟡 91% | + +## 📊 트렌드 분석 +| 항목 | 이전 실행 | 현재 실행 | 변화 | +|------|---------|---------|------| +| 전체 | 1 | 3 | +2 | +| 성공 | 1 | 3 | 📈 +2 | +| 실패 | 0 | 0 | ➡️ 동일 | + +이전 실행: 2026-03-04_22-29-50 diff --git a/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-05_00-10-32.md b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-05_00-10-32.md new file mode 100644 index 0000000..4c30725 --- /dev/null +++ b/e2e/results/hotfix/E2E_FULL_TEST_SUMMARY_2026-03-05_00-10-32.md @@ -0,0 +1,334 @@ +# E2E 전체 테스트 결과 요약 + +**실행 시간**: 2026-03-05_00-10-32 +**총 소요 시간**: 91.5분 +**전체 시나리오**: 209개 | **성공**: 209개 | **실패**: 0개 📈 (이전: 3/3 성공) + +## 카테고리별 요약 +| 카테고리 | 시나리오 수 | 성공 | 실패 | 성공률 | +|---------|-----------|------|------|--------| +| 접근성 검사 | 18 | 18 | 0 | 100% | +| 기능 테스트 | 152 | 152 | 0 | 100% | +| 엣지 케이스 | 17 | 17 | 0 | 100% | +| 성능 테스트 | 17 | 17 | 0 | 100% | +| 비즈니스 워크플로우 | 5 | 5 | 0 | 100% | + +## 시나리오별 결과 +| # | 시나리오 | 결과 | 스텝 | 성공 | 실패 | 소요(초) | +|---|---------|------|------|------|------|---------| +| 1 | 접근성 검사: 회계관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 2 | 접근성 검사: 회계관리 > 입금관리 | ✅ | 4 | 3 | 0 | 12.9 | +| 3 | 접근성 검사: 회계관리 > 매입관리 | ✅ | 4 | 4 | 0 | 11.4 | +| 4 | 접근성 검사: 회계관리 > 매출관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 5 | 접근성 검사: 결재관리 > 결재함 | ✅ | 4 | 3 | 0 | 12.8 | +| 6 | 접근성 검사: 결재관리 > 기안함 | ✅ | 4 | 3 | 0 | 12.8 | +| 7 | 접근성 검사: 게시판 > 자유게시판 | ✅ | 4 | 3 | 0 | 13.0 | +| 8 | 접근성 검사: 인사관리 > 근태관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 9 | 접근성 검사: 인사관리 > 부서관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 10 | 접근성 검사: 인사관리 > 사원관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 11 | 접근성 검사: 인사관리 > 급여관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 12 | 접근성 검사: 자재관리 > 입고관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 13 | 접근성 검사: 자재관리 > 재고현황 | ✅ | 4 | 4 | 0 | 11.3 | +| 14 | 접근성 검사: 생산관리 > 품목관리 | ✅ | 4 | 4 | 0 | 11.3 | +| 15 | 접근성 검사: 생산관리 > 작업지시 | ✅ | 4 | 3 | 0 | 12.8 | +| 16 | 접근성 검사: 판매관리 > 거래처관리 | ✅ | 4 | 3 | 0 | 12.9 | +| 17 | 접근성 검사: 판매관리 > 견적관리 | ✅ | 4 | 4 | 0 | 11.2 | +| 18 | 접근성 검사: 판매관리 > 수주관리 | ✅ | 4 | 3 | 0 | 12.8 | +| 19 | 악성채권추심관리 테스트 | ✅ | 24 | 22 | 0 | 11.3 | +| 20 | 계좌입출금내역 테스트 | ✅ | 18 | 16 | 0 | 10.2 | +| 21 | 어음관리 테스트 | ✅ | 24 | 18 | 0 | 22.4 | +| 22 | 카드사용내역 테스트 | ✅ | 18 | 16 | 0 | 10.2 | +| 23 | 회계거래처관리 테스트 | ✅ | 23 | 20 | 0 | 18.0 | +| 24 | 일일 일보 테스트 | ✅ | 10 | 10 | 0 | 11.6 | +| 25 | 입금관리 테스트 | ✅ | 25 | 19 | 0 | 22.5 | +| 26 | 지출예상내역서 테스트 | ✅ | 16 | 14 | 0 | 9.8 | +| 27 | 상품권관리 테스트 | ✅ | 11 | 9 | 0 | 13.1 | +| 28 | 일반전표입력 테스트 | ✅ | 12 | 10 | 0 | 15.1 | +| 29 | 결제내역 테스트 | ✅ | 18 | 14 | 0 | 15.3 | +| 30 | 매입관리 테스트 | ✅ | 16 | 14 | 0 | 12.5 | +| 31 | 미수금현황 테스트 | ✅ | 19 | 16 | 0 | 13.2 | +| 32 | 매출관리 테스트 | ✅ | 16 | 14 | 0 | 12.7 | +| 33 | 세금계산서발행 테스트 | ✅ | 11 | 10 | 0 | 11.5 | +| 34 | 세금계산서관리 테스트 | ✅ | 11 | 10 | 0 | 11.4 | +| 35 | 출금관리 테스트 | ✅ | 25 | 19 | 0 | 22.5 | +| 36 | API 건강성 감사: 회계 | ✅ | 39 | 39 | 0 | 46.3 | +| 37 | API 건강성 감사: 생산/기타 | ✅ | 35 | 35 | 0 | 46.8 | +| 38 | API 건강성 감사: 판매/인사 | ✅ | 35 | 35 | 0 | 46.8 | +| 39 | 결재함 E2E 테스트 | ✅ | 25 | 23 | 0 | 26.4 | +| 40 | 근태현황 출퇴근 테스트 | ✅ | 17 | 17 | 0 | 12.5 | +| 41 | 연속 등록 테스트: 어음관리 | ✅ | 39 | 39 | 0 | 96.0 | +| 42 | 연속 등록 테스트: 입금관리 | ✅ | 39 | 39 | 0 | 102.4 | +| 43 | 연속 등록 테스트: 자유게시판 | ✅ | 39 | 39 | 0 | 94.8 | +| 44 | 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 | ✅ | 14 | 14 | 0 | 26.7 | +| 45 | 게시판 관리 테스트 | ✅ | 22 | 22 | 0 | 11.4 | +| 46 | 게시판 테스트 페이지 테스트 | ✅ | 13 | 11 | 0 | 15.4 | +| 47 | 설정 - 회사정보 | ✅ | 31 | 18 | 0 | 38.1 | +| 48 | Create+Delete 테스트: 어음관리 | ✅ | 12 | 12 | 0 | 38.5 | +| 49 | Create+Delete 테스트: 입금관리 | ✅ | 12 | 12 | 0 | 35.9 | +| 50 | Create+Delete 테스트: 자유게시판 | ✅ | 15 | 15 | 0 | 42.1 | +| 51 | 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) | ✅ | 15 | 15 | 0 | 39.2 | +| 52 | 이벤트 게시판 테스트 | ✅ | 19 | 14 | 0 | 16.4 | +| 53 | FAQ 테스트 | ✅ | 16 | 12 | 0 | 12.9 | +| 54 | 1:1 문의 테스트 | ✅ | 12 | 10 | 0 | 15.4 | +| 55 | 공지사항 테스트 | ✅ | 19 | 15 | 0 | 15.8 | +| 56 | 부서관리 테스트 | ✅ | 16 | 12 | 0 | 15.0 | +| 57 | 입금관리 테스트 | ✅ | 21 | 20 | 0 | 16.2 | +| 58 | 상세 조회 왕복 검증: 회계 | ✅ | 23 | 23 | 0 | 32.7 | +| 59 | 상세 조회 왕복 검증: 인사/게시판 | ✅ | 15 | 15 | 0 | 25.7 | +| 60 | 상세 조회 왕복 검증: 판매 | ✅ | 23 | 23 | 0 | 32.8 | +| 61 | 목록↔상세 필드별 대조 검증: 매출관리 | ✅ | 12 | 12 | 0 | 23.2 | +| 62 | 기안함 테스트 | ✅ | 17 | 15 | 0 | 12.8 | +| 63 | 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) | ✅ | 14 | 14 | 0 | 23.6 | +| 64 | 엣지 케이스: 경계값 입력 (회계 > 입금관리) | ✅ | 14 | 14 | 0 | 23.3 | +| 65 | 엣지 케이스: 경계값 입력 (인사 > 사원관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 66 | 엣지 케이스: 경계값 입력 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 23.4 | +| 67 | 엣지 케이스: 동시 액션 (인사 > 근태관리) | ✅ | 5 | 5 | 0 | 13.8 | +| 68 | 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) | ✅ | 7 | 7 | 0 | 19.2 | +| 69 | 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.2 | +| 70 | 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) | ✅ | 7 | 7 | 0 | 19.1 | +| 71 | 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 19.1 | +| 72 | 엣지 케이스: 숫자 경계값 (회계 > 입금관리) | ✅ | 13 | 13 | 0 | 23.8 | +| 73 | 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) | ✅ | 10 | 10 | 0 | 27.3 | +| 74 | 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) | ✅ | 6 | 6 | 0 | 15.9 | +| 75 | 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) | ✅ | 7 | 7 | 0 | 19.9 | +| 76 | 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) | ✅ | 7 | 7 | 0 | 20.0 | +| 77 | 엣지 케이스: 특수문자 검색 (게시판 > 자유게시판) | ✅ | 14 | 14 | 0 | 32.1 | +| 78 | 엣지 케이스: 특수문자 검색 (판매 > 거래처관리) | ✅ | 14 | 14 | 0 | 32.0 | +| 79 | 엣지 케이스: 유니코드 입력 (게시판 > 자유게시판) | ✅ | 10 | 10 | 0 | 20.5 | +| 80 | 직원 등록 테스트 | ✅ | 22 | 21 | 0 | 31.5 | +| 81 | 폼 유효성 검증 감사: 회계 (어음/입금/출금) | ✅ | 20 | 20 | 0 | 43.3 | +| 82 | 폼 유효성 검증 감사: 생산/게시판 | ✅ | 13 | 13 | 0 | 25.1 | +| 83 | 폼 유효성 검증 감사: 판매 (거래처/수주/견적) | ✅ | 20 | 20 | 0 | 43.2 | +| 84 | 자유게시판 E2E 테스트 | ✅ | 22 | 22 | 0 | 13.2 | +| 85 | Full CRUD 테스트: 어음관리 (Enhanced) | ✅ | 32 | 32 | 0 | 57.0 | +| 86 | Full CRUD 테스트: 입금관리 (금액포맷+상세대조+API검증) | ✅ | 35 | 35 | 0 | 56.0 | +| 87 | Full CRUD 테스트: 매출관리 (계산검증+상세대조+API검증) | ✅ | 33 | 33 | 0 | 55.3 | +| 88 | Full CRUD 테스트: 자유게시판 (Enhanced) | ✅ | 33 | 33 | 0 | 64.0 | +| 89 | 근태관리 테스트 | ✅ | 14 | 14 | 0 | 10.3 | +| 90 | 근태현황 테스트 | ✅ | 17 | 14 | 0 | 11.6 | +| 91 | 부서관리 테스트 | ✅ | 14 | 14 | 0 | 10.0 | +| 92 | 사원관리 테스트 | ✅ | 22 | 22 | 0 | 13.5 | +| 93 | 급여 장기요양보험 필드 검증 테스트 | ✅ | 16 | 16 | 0 | 18.6 | +| 94 | 급여관리 테스트 | ✅ | 22 | 22 | 0 | 13.1 | +| 95 | 휴가관리 테스트 | ✅ | 25 | 19 | 0 | 21.9 | +| 96 | 입력 필드 전수 테스트: 어음/입금/출금 (1/5) | ✅ | 20 | 20 | 0 | 54.1 | +| 97 | 입력 필드 전수 테스트: 거래처(회계)/악성채권 (2/5) | ✅ | 13 | 13 | 0 | 60.7 | +| 98 | 입력 필드 전수 테스트: 입고/제품검사 (5/5) | ✅ | 13 | 13 | 0 | 30.6 | +| 99 | 입력 필드 전수 테스트: 작업지시/작업실적 (4/5) | ✅ | 13 | 13 | 0 | 20.7 | +| 100 | 입력 필드 전수 테스트: 거래처(판매)/수주/견적 (3/5) | ✅ | 20 | 20 | 0 | 41.4 | +| 101 | 재고현황 테스트 | ✅ | 12 | 12 | 0 | 10.0 | +| 102 | 품목관리 테스트 | ✅ | 16 | 11 | 0 | 23.1 | +| 103 | 품목기준관리 테스트 | ✅ | 14 | 13 | 0 | 11.1 | +| 104 | 로그인 테스트 (끝판왕) | ✅ | 24 | 21 | 0 | 14.7 | +| 105 | 배차차량관리 목록/검색/상세/등록폼/필터/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.5 | +| 106 | 입고관리 테스트 | ✅ | 25 | 19 | 0 | 20.8 | +| 107 | 재고현황 테스트 | ✅ | 18 | 16 | 0 | 10.1 | +| 108 | 다중 품목 등록 + 자동계산 + 품목삭제 재계산: 매출관리 | ✅ | 22 | 22 | 0 | 44.8 | +| 109 | 페이지네이션 & 정렬 검증: 회계 | ✅ | 17 | 17 | 0 | 39.3 | +| 110 | 페이지네이션 & 정렬 검증: 인사/게시판 | ✅ | 11 | 11 | 0 | 27.7 | +| 111 | 페이지네이션 & 정렬 검증: 판매 | ✅ | 17 | 17 | 0 | 37.3 | +| 112 | PDF 다운로드 전체 검사 | ✅ | 5 | 5 | 0 | 1.2 | +| 113 | 성능 측정: 회계관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 114 | 성능 측정: 회계관리 > 입금관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 115 | 성능 측정: 회계관리 > 매입관리 | ✅ | 5 | 5 | 0 | 9.2 | +| 116 | 성능 측정: 회계관리 > 매출관리 | ✅ | 5 | 5 | 0 | 9.2 | +| 117 | 성능 측정: 인사관리 > 근태관리 | ✅ | 5 | 5 | 0 | 9.2 | +| 118 | 성능 측정: 인사관리 > 부서관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 119 | 성능 측정: 인사관리 > 사원관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 120 | 성능 측정: 인사관리 > 급여관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 121 | 성능 측정: 자재관리 > 입고관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 122 | 성능 측정: 자재관리 > 재고현황 | ✅ | 5 | 5 | 0 | 9.1 | +| 123 | 성능 측정: 생산관리 > 품목관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 124 | 성능 측정: 생산관리 > 작업지시 | ✅ | 5 | 5 | 0 | 9.1 | +| 125 | 성능 측정: 생산관리 > 작업실적 | ✅ | 5 | 5 | 0 | 9.1 | +| 126 | 성능 측정: 판매관리 > 거래처관리 | ✅ | 5 | 5 | 0 | 9.0 | +| 127 | 성능 측정: 판매관리 > 견적관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 128 | 성능 측정: 판매관리 > 수주관리 | ✅ | 5 | 5 | 0 | 9.3 | +| 129 | 성능 측정: 판매관리 > 단가관리 | ✅ | 5 | 5 | 0 | 9.1 | +| 130 | 생산 현황판 테스트 | ✅ | 12 | 10 | 0 | 12.9 | +| 131 | 생산품목관리 테스트 | ✅ | 14 | 13 | 0 | 11.2 | +| 132 | 작업지시 CRUD + 필드검증 + API확인: 생산관리 | ✅ | 30 | 30 | 0 | 41.6 | +| 133 | 작업실적 테스트 | ✅ | 23 | 19 | 0 | 18.6 | +| 134 | 작업자 화면 테스트 | ✅ | 14 | 13 | 0 | 11.2 | +| 135 | 발주관리 테스트 | ✅ | 12 | 10 | 0 | 14.9 | +| 136 | 구매 단가관리 테스트 | ✅ | 11 | 8 | 0 | 21.7 | +| 137 | 구매현황 테스트 | ✅ | 9 | 8 | 0 | 13.1 | +| 138 | 구매관리 거래처관리 테스트 | ✅ | 11 | 9 | 0 | 15.0 | +| 139 | 품질인정심사 시스템 테스트 | ✅ | 14 | 14 | 0 | 9.7 | +| 140 | 제품검사관리 테스트 | ✅ | 17 | 17 | 0 | 12.1 | +| 141 | 실적신고관리 테스트 | ✅ | 12 | 12 | 0 | 9.6 | +| 142 | 입고관리 테스트 | ✅ | 9 | 9 | 0 | 9.8 | +| 143 | 참조함 E2E 테스트 | ✅ | 40 | 37 | 0 | 29.0 | +| 144 | 새로고침 데이터 유지 검증: 어음관리 | ✅ | 18 | 18 | 0 | 45.6 | +| 145 | 새로고침 데이터 유지 검증: 입금관리 | ✅ | 16 | 16 | 0 | 51.7 | +| 146 | 새로고침 데이터 유지 검증: 매출관리 | ✅ | 16 | 16 | 0 | 49.8 | +| 147 | 새로고침 데이터 유지 검증: 자유게시판 | ✅ | 19 | 19 | 0 | 55.8 | +| 148 | 판매거래처관리 테스트 | ✅ | 23 | 19 | 0 | 19.9 | +| 149 | Full CRUD 테스트: 매출관리 | ✅ | 23 | 23 | 0 | 62.3 | +| 150 | 수주 일괄삭제 테스트 | ✅ | 20 | 20 | 0 | 39.7 | +| 151 | 수주관리 CRUD + 계산검증 테스트 | ✅ | 32 | 32 | 0 | 48.3 | +| 152 | 단가관리 테스트 | ✅ | 26 | 24 | 0 | 14.5 | +| 153 | 견적관리 CRUD + 계산검증 테스트 | ✅ | 32 | 31 | 0 | 45.7 | +| 154 | 현장관리 테스트 | ✅ | 11 | 9 | 0 | 15.1 | +| 155 | 기안함 검색 버그 상세 검증 | ✅ | 11 | 11 | 0 | 25.2 | +| 156 | 급여관리 검색 버그 상세 검증 | ✅ | 10 | 10 | 0 | 27.2 | +| 157 | 검색/필터/페이지네이션 테스트: 매출관리 | ✅ | 18 | 18 | 0 | 32.7 | +| 158 | 검색 기능 동작 검증: 회계 | ✅ | 20 | 20 | 0 | 52.4 | +| 159 | 검색 기능 감사: 회계관리 (1/6) | ✅ | 20 | 20 | 0 | 43.8 | +| 160 | 검색 기능 감사: 회계관리2+인사관리 (2/6) | ✅ | 20 | 20 | 0 | 36.6 | +| 161 | 검색 기능 감사: 게시판/고객센터/설정1 (5/6) | ✅ | 20 | 20 | 0 | 36.9 | +| 162 | 검색 기능 감사: 생산/품목/품질/자재 (3/6) | ✅ | 20 | 20 | 0 | 30.2 | +| 163 | 검색 기능 감사: 판매/출고/결재 (4/6) | ✅ | 16 | 16 | 0 | 37.9 | +| 164 | 검색 기능 감사: 설정2 (6/6) | ✅ | 14 | 14 | 0 | 23.7 | +| 165 | 검색 기능 동작 검증: 인사/게시판 | ✅ | 13 | 13 | 0 | 39.6 | +| 166 | 검색 기능 동작 검증: 판매 | ✅ | 20 | 20 | 0 | 40.9 | +| 167 | 검색 옵션 전수 테스트: 회계거래처/입금/출금 (1/10) | ✅ | 11 | 11 | 0 | 91.2 | +| 168 | 검색 옵션 전수 테스트: 매입/매출/카드내역 (2/10) | ✅ | 11 | 11 | 0 | 85.1 | +| 169 | 검색 옵션 전수 테스트: 어음/추심/계좌 (3/11) | ✅ | 11 | 11 | 0 | 116.0 | +| 170 | 검색 옵션 전수 테스트: 미수금/결제/지출예상 (4/11) | ✅ | 11 | 11 | 0 | 50.6 | +| 171 | 검색 옵션 전수 테스트: 결재관리 (6/10) | ✅ | 11 | 11 | 0 | 75.2 | +| 172 | 검색 옵션 전수 테스트: 게시판/고객센터 (5/10) | ✅ | 19 | 19 | 0 | 84.8 | +| 173 | 검색 옵션 전수 테스트: 인사관리 전체 (4/10) | ✅ | 27 | 27 | 0 | 106.9 | +| 174 | 검색 옵션 전수 테스트: 생산/품목관리 (8/11) | ✅ | 19 | 19 | 0 | 49.5 | +| 175 | 검색 옵션 전수 테스트: 품질/자재관리 (9/10) | ✅ | 15 | 15 | 0 | 73.9 | +| 176 | 검색 옵션 전수 테스트: 판매관리/출고 (7/11) | ✅ | 19 | 19 | 0 | 41.4 | +| 177 | 검색 옵션 전수 테스트: 설정 (10/11) | ✅ | 19 | 19 | 0 | 40.3 | +| 178 | 계정정보 테스트 | ✅ | 16 | 14 | 0 | 12.4 | +| 179 | 근태설정 테스트 | ✅ | 16 | 13 | 0 | 11.6 | +| 180 | 계좌관리 테스트 | ✅ | 23 | 21 | 0 | 13.3 | +| 181 | 바로빌연동관리 테스트 | ✅ | 8 | 6 | 0 | 12.7 | +| 182 | 달력 일정 CRUD 테스트 | ✅ | 20 | 17 | 0 | 45.9 | +| 183 | 달력관리 테스트 | ✅ | 8 | 7 | 0 | 11.1 | +| 184 | 카드관리 목록/검색/상세/등록폼/페이지네이션 테스트 | ✅ | 23 | 22 | 0 | 14.5 | +| 185 | 회사정보 테스트 | ✅ | 16 | 13 | 0 | 14.6 | +| 186 | 알림설정 테스트 | ✅ | 16 | 13 | 0 | 13.9 | +| 187 | 권한관리 테스트 | ✅ | 20 | 18 | 0 | 13.4 | +| 188 | 팝업관리 테스트 | ✅ | 23 | 21 | 0 | 15.0 | +| 189 | 직책관리 테스트 | ✅ | 12 | 11 | 0 | 11.5 | +| 190 | 직급관리 테스트 | ✅ | 12 | 11 | 0 | 11.5 | +| 191 | 구독관리 테스트 | ✅ | 16 | 12 | 0 | 14.7 | +| 192 | 휴가정책 테스트 | ✅ | 16 | 15 | 0 | 9.4 | +| 193 | 근무일정 테스트 | ✅ | 16 | 15 | 0 | 10.4 | +| 194 | 출고관리 테스트 | ✅ | 13 | 11 | 0 | 19.2 | +| 195 | 점검표 관리 테스트 | ✅ | 11 | 8 | 0 | 19.2 | +| 196 | 단가배포관리 테스트 | ✅ | 11 | 8 | 0 | 19.2 | +| 197 | 공정관리 테스트 | ✅ | 12 | 9 | 0 | 19.2 | +| 198 | 단가표관리 테스트 | ✅ | 12 | 9 | 0 | 19.2 | +| 199 | 시스템 대시보드 위젯/통계/현황판/자금현황/지출예상/설정 테스트 | ✅ | 20 | 19 | 0 | 11.6 | +| 200 | Test bills 14 steps | ✅ | 14 | 14 | 0 | 61.6 | +| 201 | Test bills page minimal | ✅ | 3 | 3 | 0 | 7.1 | +| 202 | 거래처원장 테스트 | ✅ | 34 | 30 | 0 | 22.6 | +| 203 | 거래처관리 검색/필터/상세/수정/복원 + 네거티브 + 섹션검증: 회계관리 | ✅ | 36 | 36 | 0 | 46.1 | +| 204 | 출금관리 테스트 | ✅ | 21 | 20 | 0 | 16.3 | +| 205 | 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 | ✅ | 15 | 15 | 0 | 29.7 | +| 206 | 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 | ✅ | 14 | 14 | 0 | 37.7 | +| 207 | 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 | ✅ | 15 | 15 | 0 | 39.0 | +| 208 | 비즈니스 워크플로우: 구매→매입 흐름 | ✅ | 7 | 7 | 0 | 21.9 | +| 209 | 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 | ✅ | 22 | 22 | 0 | 27.3 | + +## 비즈니스 워크플로우 상세 + +### ✅ 비즈니스 워크플로우: 게시판→결재기안→결재함 흐름 +- 스텝: 15/15 성공 | 소요: 29.7초 +- 단계: CAPTURE_POST(✅) → CHECK_DRAFTS(✅) → CHECK_APPROVALS(✅) → CHECK_REFERENCES(✅) + +### ✅ 비즈니스 워크플로우: 사원등록→부서→근태→급여 흐름 +- 스텝: 14/14 성공 | 소요: 37.7초 +- 단계: CAPTURE_EMPLOYEE(✅) → CHECK_DEPARTMENTS(✅) → VERIFY_EMPLOYEE_ATTEND(✅) → VERIFY_EMPLOYEE_SALARY(✅) + +### ✅ 비즈니스 워크플로우: 품목→입고→재고→출고 흐름 +- 스텝: 15/15 성공 | 소요: 39.0초 +- 단계: CAPTURE_ITEM(✅) → VERIFY_ITEM_RECEIVING(✅) → VERIFY_ITEM_STOCK(✅) → CHECK_WITHDRAWAL(✅) + +### ✅ 비즈니스 워크플로우: 구매→매입 흐름 +- 스텝: 7/7 성공 | 소요: 21.9초 +- 단계: CAPTURE_VENDOR(✅) → VERIFY_VENDOR_ACC(✅) + +### ✅ 비즈니스 워크플로우: 거래처→단가→수주→매출 흐름 +- 스텝: 22/22 성공 | 소요: 27.3초 +- 단계: INIT(✅) → CAPTURE_CLIENT(✅) → VERIFY(✅) → CAPTURE_PRICE_ITEM(✅) → VERIFY(✅) → CHECK_ORDERS(✅) → VERIFY(✅) → CHECK_SALES(✅) → VERIFY(✅) → VERIFY(✅) → SUMMARY(✅) + +## 성능 테스트 요약 +| 페이지 | 로드 시간 | 등급 | API 평균 | DOM 노드 | +|--------|----------|------|---------|----------| +| 성능 측정: 회계관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 회계관리 > 입금관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매입관리 | - | - | - | - | +| 성능 측정: 회계관리 > 매출관리 | - | - | - | - | +| 성능 측정: 인사관리 > 근태관리 | - | - | - | - | +| 성능 측정: 인사관리 > 부서관리 | - | - | - | - | +| 성능 측정: 인사관리 > 사원관리 | - | - | - | - | +| 성능 측정: 인사관리 > 급여관리 | - | - | - | - | +| 성능 측정: 자재관리 > 입고관리 | - | - | - | - | +| 성능 측정: 자재관리 > 재고현황 | - | - | - | - | +| 성능 측정: 생산관리 > 품목관리 | - | - | - | - | +| 성능 측정: 생산관리 > 작업지시 | - | - | - | - | +| 성능 측정: 생산관리 > 작업실적 | - | - | - | - | +| 성능 측정: 판매관리 > 거래처관리 | - | - | - | - | +| 성능 측정: 판매관리 > 견적관리 | - | - | - | - | +| 성능 측정: 판매관리 > 수주관리 | - | - | - | - | +| 성능 측정: 판매관리 > 단가관리 | - | - | - | - | + +## 접근성 검사 요약 +| 페이지 | 점수 | 등급 | Critical | Serious | Moderate | +|--------|------|------|----------|---------|----------| +| 접근성 검사: 회계관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 입금관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매입관리 | - | - | - | - | - | +| 접근성 검사: 회계관리 > 매출관리 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 결재함 | - | - | - | - | - | +| 접근성 검사: 결재관리 > 기안함 | - | - | - | - | - | +| 접근성 검사: 게시판 > 자유게시판 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 근태관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 부서관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 사원관리 | - | - | - | - | - | +| 접근성 검사: 인사관리 > 급여관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 입고관리 | - | - | - | - | - | +| 접근성 검사: 자재관리 > 재고현황 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 품목관리 | - | - | - | - | - | +| 접근성 검사: 생산관리 > 작업지시 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 거래처관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 견적관리 | - | - | - | - | - | +| 접근성 검사: 판매관리 > 수주관리 | - | - | - | - | - | + +## ⚠️ 불안정 테스트 (Flaky Tests) +최근 3일간 성공과 실패가 모두 발생한 시나리오: + +| 시나리오 | 성공 횟수 | 실패 횟수 | 안정성 | +|---------|----------|----------|--------| +| settings-calendar-crud | 4 | 7 | 🔴 36% | +| hr-salary-long-term-care | 5 | 1 | 🟡 83% | +| reload-persist-acc-deposit | 7 | 1 | 🟡 88% | +| reload-persist-acc-sales | 7 | 1 | 🟡 88% | +| reload-persist-board | 7 | 1 | 🟡 88% | +| sales-client | 7 | 1 | 🟡 88% | +| sales-management | 8 | 1 | 🟡 89% | +| sales-order-bulk-delete | 4 | 1 | 🟡 80% | +| sales-order | 7 | 1 | 🟡 88% | +| sales-pricing | 7 | 1 | 🟡 88% | +| sales-quotation | 7 | 1 | 🟡 88% | +| sales-site-mgmt | 7 | 1 | 🟡 88% | +| search-bug-draft | 11 | 1 | 🟡 92% | +| search-bug-salary | 11 | 1 | 🟡 92% | +| search-filter-acc-sales | 10 | 1 | 🟡 91% | +| search-function-acc | 11 | 1 | 🟡 92% | +| search-function-audit-acc1 | 10 | 1 | 🟡 91% | +| search-function-audit-acc2-hr | 10 | 1 | 🟡 91% | +| search-function-audit-boards | 10 | 1 | 🟡 91% | +| search-function-audit-production | 10 | 1 | 🟡 91% | +| search-function-audit-sales-approval | 10 | 1 | 🟡 91% | +| search-function-audit-settings | 10 | 1 | 🟡 91% | +| search-function-hr-board | 12 | 1 | 🟡 92% | +| search-function-sales | 12 | 1 | 🟡 92% | +| search-options-acc-1 | 11 | 1 | 🟡 92% | +| search-options-acc-2 | 11 | 1 | 🟡 92% | +| search-options-acc-3 | 11 | 1 | 🟡 92% | + +## 📊 트렌드 분석 +| 항목 | 이전 실행 | 현재 실행 | 변화 | +|------|---------|---------|------| +| 전체 | 3 | 209 | +206 | +| 성공 | 3 | 209 | 📈 +206 | +| 실패 | 0 | 0 | ➡️ 동일 | + +이전 실행: 2026-03-04_22-30-10 diff --git a/e2e/results/hotfix/E2E_SCENARIO_COMPLETENESS_REPORT_2026-03-05_16-26-10.md b/e2e/results/hotfix/E2E_SCENARIO_COMPLETENESS_REPORT_2026-03-05_16-26-10.md new file mode 100644 index 0000000..0e4d5b1 --- /dev/null +++ b/e2e/results/hotfix/E2E_SCENARIO_COMPLETENESS_REPORT_2026-03-05_16-26-10.md @@ -0,0 +1,284 @@ +# E2E 시나리오 완성도 검증 리포트 + +**검증일**: 2026-03-05 16:26 | **총 시나리오**: 209개 | **실제 메뉴**: 15개 모듈, 63개 하위메뉴 + +--- + +## 1. 실제 사이드바 메뉴 vs 시나리오 매핑 (메뉴별) + +### 📌 시스템 대시보드 +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 시스템 대시보드 | `system-dashboard` (20스텝) | - | ✅ 완전 | + +--- + +### 📌 품질관리 (3개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 제품검사관리 | `quality-inspection` (17스텝) | search-options-quality-material | ✅ 완전 | +| 실적신고관리 | `quality-performance-report` (12스텝) | search-options-quality-material | ✅ 완전 | +| 품질인정심사 시스템 | `quality-certification` (14스텝) | search-options-quality-material | ✅ 완전 | + +--- + +### 📌 품목관리 (1개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 품목기준관리 | `item-master` (14스텝), `production-item` (14스텝) | search-options-production | ✅ 완전 | + +--- + +### 📌 결재관리 (3개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 기안함 | `draft-box` (17스텝) | a11y-approval-draft, search-bug-draft, search-options-approval, workflow-board-approval | ✅ 완전 | +| 결재함 | `approval-box` (25스텝) | a11y-approval-box, search-options-approval | ✅ 완전 | +| 참조함 | `reference-box` (40스텝) | search-options-approval | ✅ 완전 | + +--- + +### 📌 기준정보 관리 (4개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 공정관리 | `standard-process-mgmt` (12스텝) | - | ✅ 완전 | +| 단가표관리 | `standard-unit-price` (12스텝) | - | ✅ 완전 | +| 단가배포관리 | `standard-price-distribute` (11스텝) | - | ✅ 완전 | +| 점검표 관리 | `standard-checklist` (11스텝) | - | ✅ 완전 | + +--- + +### 📌 게시판 (3개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 게시판 관리 | `board-management` (22스텝) | search-function-audit-boards | ✅ 완전 | +| 자유게시판 | `free-board` (22스텝) | a11y-board-free, batch-create-board, create-delete-board, full-crud-board, edge-empty-submit-board, edge-rapid-click-delete, edge-rapid-click-save-board, edge-special-chars-board, edge-unicode-input-board, reload-persist-board, search-function-audit-boards, search-options-boards-customer, workflow-board-approval | ✅ **가장 풍부** | +| 게시판 테스트 | `board-test` (13스텝) | - | ✅ 완전 | + +--- + +### 📌 인사관리 (6개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 사원관리 | `hr-employee` (22스텝), `employee-register` (22스텝) | a11y-hr-employee, perf-hr-employee, edge-boundary-input-hr, edge-empty-submit-hr, pagination-sort-hr, search-function-hr-board, search-options-hr, detail-roundtrip-hr-board, workflow-employee-onboarding | ✅ 완전 | +| 부서관리 | `hr-department` (14스텝), `department-add` (16스텝) | a11y-hr-department, perf-hr-department, search-options-hr | ✅ 완전 | +| 근태현황 | `hr-attendance-status` (17스텝), `attendance-checkin` (17스텝) | a11y-hr-attendance, perf-hr-attendance, search-options-hr | ✅ 완전 | +| 근태관리 | `hr-attendance-admin` (14스텝) | a11y-hr-attendance, perf-hr-attendance, edge-concurrent-action-hr, search-options-hr | ✅ 완전 | +| 급여관리 | `hr-salary` (22스텝), `hr-salary-long-term-care` (16스텝) | a11y-hr-salary, perf-hr-salary, search-bug-salary, search-options-hr | ✅ 완전 | +| 휴가관리 | `hr-vacation` (25스텝) | search-options-hr | ✅ 완전 | + +--- + +### 📌 고객센터 (4개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 공지사항 | `customer-notice` (19스텝) | search-options-boards-customer | ✅ 완전 | +| 1:1 문의 | `customer-inquiry` (12스텝) | search-options-boards-customer | ✅ 완전 | +| FAQ | `customer-faq` (16스텝) | search-options-boards-customer | ✅ 완전 | +| 이벤트 게시판 | `customer-event` (19스텝) | search-options-boards-customer | ✅ 완전 | + +--- + +### 📌 설정 (15개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 바로빌연동관리 | `settings-barobill` (8스텝) | search-function-audit-settings, search-options-settings | ✅ 완전 | +| 달력관리 | `settings-calendar` (8스텝), `settings-calendar-crud` (20스텝) | search-options-settings | ✅ 완전 | +| 계정정보 | `settings-account` (16스텝) | search-options-settings | ✅ 완전 | +| 계좌관리 | `settings-bank-account` (23스텝) | search-options-settings | ✅ 완전 | +| 카드관리 | `settings-card` (23스텝) | search-options-settings | ✅ 완전 | +| 권한관리 | `settings-permission` (20스텝) | search-function-audit-settings, search-options-settings | ✅ 완전 | +| 직급관리 | `settings-rank` (12스텝) | search-options-settings | ✅ 완전 | +| 직책관리 | `settings-position` (12스텝) | search-options-settings | ✅ 완전 | +| 근태설정 | `settings-attendance` (16스텝) | search-options-settings | ✅ 완전 | +| 휴가정책 | `settings-vacation-policy` (16스텝) | search-options-settings | ✅ 완전 | +| 근무일정 | `settings-work-schedule` (16스텝) | search-options-settings | ✅ 완전 | +| 알림설정 | `settings-notification` (16스텝) | search-options-settings | ✅ 완전 | +| 팝업관리 | `settings-popup` (23스텝) | search-options-settings | ✅ 완전 | +| 회사정보 | `settings-company` (16스텝), `company-info` (31스텝) | search-options-settings | ✅ 완전 | +| 구독관리 | `settings-subscription` (16스텝) | search-options-settings | ✅ 완전 | + +--- + +### 📌 판매관리 (5개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 견적관리 | `sales-quotation` (32스텝) | a11y-sales-estimate, perf-sales-estimate, search-options-sales, form-validation-sales, input-fields-sales | ✅ 완전 | +| 수주관리 | `sales-order` (32스텝), `sales-order-bulk-delete` (20스텝) | a11y-sales-order, perf-sales-order, search-options-sales, form-validation-sales, input-fields-sales | ✅ 완전 | +| 현장관리 | `sales-site-mgmt` (11스텝) | search-options-sales | ✅ 완전 | +| 단가관리 | `sales-pricing` (26스텝) | perf-sales-price, search-options-sales | ✅ 완전 | +| 거래처관리 | `sales-client` (23스텝) | a11y-sales-client, perf-sales-client, edge-boundary-input-sales, edge-empty-submit-sales, edge-rapid-click-save-sales, edge-special-chars-search, pagination-sort-sales, search-function-sales, search-options-sales, form-validation-sales, input-fields-sales, detail-roundtrip-sales, cross-module-data-consistency, workflow-sales-lifecycle, workflow-purchase-to-payment | ✅ **가장 풍부** | + +--- + +### 📌 생산관리 (5개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 품목관리 | `item-management` (16스텝) | a11y-prod-item, perf-prod-item, search-options-production, form-validation-misc, input-fields-production, workflow-inventory-cycle | ✅ 완전 | +| 생산 현황판 | `production-dashboard` (12스텝) | search-options-production | ✅ 완전 | +| 작업지시 관리 | `production-work-order` (30스텝) | a11y-prod-work-order, perf-prod-work-order, search-options-production, form-validation-misc, input-fields-production, api-health-prod-misc | ✅ 완전 | +| 작업실적 | `production-work-result` (23스텝) | perf-prod-work-result, search-options-production, input-fields-production | ✅ 완전 | +| 작업자 화면 | `production-worker` (14스텝) | search-options-production | ✅ 완전 | + +--- + +### 📌 구매관리 (4개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 거래처관리 | `purchase-vendor` (11스텝) | search-function-audit-sales-approval | ✅ 완전 | +| 발주관리 | `purchase-order` (12스텝) | - | ✅ 완전 | +| 구매현황 | `purchase-status` (9스텝) | - | ✅ 완전 | +| 단가관리 | `purchase-price` (11스텝) | - | ✅ 완전 | + +--- + +### 📌 자재관리 (2개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 재고현황 | `material-stock` (18스텝), `inventory-status` (12스텝) | a11y-material-stock, perf-material-stock, search-options-quality-material | ✅ 완전 | +| 입고관리 | `material-receiving` (25스텝), `receiving-management` (9스텝) | a11y-material-receiving, perf-material-receiving, input-fields-material-quality, search-options-quality-material | ✅ 완전 | + +--- + +### 📌 출고관리 (2개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 배차차량관리 | `material-dispatch` (23스텝) | search-function-audit-sales-approval | ✅ 완전 | +| 출고관리 | `shipment-management` (13스텝) | search-options-sales, workflow-inventory-cycle | ✅ 완전 | + +--- + +### 📌 회계관리 (18개 하위메뉴) +| 메뉴 | 핵심 시나리오 | 보조 시나리오 | 커버리지 | +|------|-------------|-------------|---------| +| 세금계산서발행 | `accounting-tax-issue` (11스텝) | search-function-audit-acc2-hr | ✅ 완전 | +| 세금계산서관리 | `accounting-tax-mgmt` (11스텝) | search-function-audit-acc2-hr | ✅ 완전 | +| 상품권관리 | `accounting-gift-card` (11스텝) | search-function-audit-acc2-hr | ✅ 완전 | +| 일반전표입력 | `accounting-journal-entry` (12스텝) | search-function-audit-acc2-hr | ✅ 완전 | +| 거래처관리 | `accounting-client` (23스텝), `vendor-management` (36스텝) | a11y-acc-client, perf-acc-client, search-function-audit-acc1, search-options-acc-1, input-fields-acc-2, detail-roundtrip-acc, api-health-acc | ✅ **가장 풍부** | +| 거래처원장 | `vendor-ledger` (34스텝) | search-function-audit-acc1 | ✅ 완전 | +| 매출관리 | `accounting-sales` (16스텝), `sales-management` (23스텝) | a11y-acc-sales, perf-acc-sales, full-crud-acc-sales, batch-update-account-sales, multi-item-acc-sales, edge-boundary-acc-sales, edge-rapid-click-acc-sales, reload-persist-acc-sales, search-filter-acc-sales, search-options-acc-2, detail-verify-acc-sales | ✅ **가장 풍부** | +| 매입관리 | `accounting-purchase` (16스텝) | a11y-acc-purchase, perf-acc-purchase, search-options-acc-2, api-health-acc | ✅ 완전 | +| 어음관리 | `accounting-bill` (24스텝) | batch-create-acc-bills, create-delete-acc-bills, full-crud-acc-bills, form-validation-acc, input-fields-acc-1, pagination-sort-acc, search-function-acc, search-options-acc-3, reload-persist-acc-bills, test-bills-14steps, test-bills-minimal, api-health-acc | ✅ **가장 풍부** | +| 입금관리 | `accounting-deposit` (25스텝), `deposit-management` (21스텝) | a11y-acc-deposit, perf-acc-deposit, batch-create-acc-deposit, create-delete-acc-deposit, full-crud-acc-deposit, edge-boundary-input-accounting, edge-empty-submit-accounting, edge-numeric-boundary-accounting, form-validation-acc, input-fields-acc-1, reload-persist-acc-deposit, search-options-acc-1, api-health-acc | ✅ **가장 풍부** | +| 출금관리 | `accounting-withdrawal` (25스텝), `withdrawal-management` (21스텝) | form-validation-acc, input-fields-acc-1, search-options-acc-1, api-health-acc | ✅ 완전 | +| 계좌입출금내역 | `accounting-bank-transaction` (18스텝) | search-options-acc-3 | ✅ 완전 | +| 카드사용내역 | `accounting-card-history` (18스텝) | search-options-acc-2 | ✅ 완전 | +| 미수금현황 | `accounting-receivable` (19스텝) | search-options-acc-4 | ✅ 완전 | +| 지출예상내역서 | `accounting-expense-forecast` (16스텝) | search-function-audit-acc2-hr, search-options-acc-4 | ✅ 완전 | +| 악성채권추심관리 | `accounting-bad-debt` (24스텝) | input-fields-acc-2, search-options-acc-3 | ✅ 완전 | +| 일일 일보 | `accounting-daily-report` (10스텝) | search-function-audit-acc2-hr | ✅ 완전 | +| 결제내역 | `accounting-payment` (18스텝) | search-options-acc-4 | ✅ 완전 | + +--- + +## 2. 크로스-페이지 테스트 (메뉴 비종속) + +| 카테고리 | 시나리오 수 | 대상 | +|----------|-----------|------| +| **접근성(a11y)** | 18개 | 회계(4), 결재(2), 게시판(1), 인사(4), 자재(2), 생산(2), 판매(3) | +| **성능(perf)** | 17개 | 회계(4), 인사(4), 자재(2), 생산(3), 판매(4) | +| **검색 기능 감사** | 6개 | 회계(2), 생산(1), 판매/출고/결재(1), 게시판/고객센터/설정(1), 설정(1) | +| **검색 옵션 전수** | 11개 | 회계(4), 인사(1), 게시판/고객센터(1), 결재(1), 판매/출고(1), 생산(1), 품질/자재(1), 설정(1) | +| **검색 기능 동작** | 3개 | 회계(1), 인사/게시판(1), 판매(1) | +| **검색 버그 회귀** | 2개 | 결재-기안함(1), 인사-급여관리(1) | +| **엣지 케이스** | 13개 | 회계(4), 인사(2), 판매(3), 게시판(4) | +| **폼 유효성 검증** | 3개 | 회계(1), 판매(1), 생산/게시판(1) | +| **입력 필드 전수** | 5개 | 회계(2), 판매(1), 생산(1), 자재/품질(1) | +| **페이지네이션/정렬** | 3개 | 회계(1), 인사(1), 판매(1) | +| **새로고침 유지** | 4개 | 회계-어음(1), 회계-입금(1), 회계-매출(1), 게시판(1) | +| **Full CRUD** | 4개 | 회계-어음(1), 회계-입금(1), 회계-매출(1), 게시판(1) | +| **Create+Delete** | 3개 | 회계-어음(1), 회계-입금(1), 게시판(1) | +| **연속 등록(Batch)** | 3개 | 회계-어음(1), 회계-입금(1), 게시판(1) | +| **상세 왕복** | 3개 | 회계(1), 인사/게시판(1), 판매(1) | +| **상세 필드 대조** | 1개 | 회계-매출(1) | +| **API 건강성** | 3개 | 회계(1), 생산/기타(1), 판매/인사(1) | +| **비즈니스 워크플로우** | 5개 | 게시판→결재(1), 사원등록 흐름(1), 재고 순환(1), 구매→매입(1), 판매 라이프사이클(1) | +| **모듈 간 일관성** | 1개 | 판매↔회계, 판매↔생산 | +| **로그인** | 1개 | 로그인/로그아웃 전체 흐름 | +| **PDF 다운로드** | 1개 | 전체 PDF 다운로드 검사 | +| **계정과목 일괄변경 회귀** | 1개 | 회계-매출관리 버그 회귀 | +| **다중 품목 자동계산** | 1개 | 회계-매출관리 | +| **어음 테스트 변형** | 2개 | 어음관리 최소/14스텝 변형 | + +--- + +## 3. 검증 결과 요약 + +### ✅ 모든 실제 메뉴에 대한 시나리오 존재 여부 + +| 모듈 | 하위메뉴 수 | 커버된 메뉴 | 누락 메뉴 | 상태 | +|------|-----------|-----------|----------|------| +| 시스템 대시보드 | 1 | 1 | 0 | ✅ 100% | +| 품질관리 | 3 | 3 | 0 | ✅ 100% | +| 품목관리 | 1 | 1 | 0 | ✅ 100% | +| 결재관리 | 3 | 3 | 0 | ✅ 100% | +| 기준정보 관리 | 4 | 4 | 0 | ✅ 100% | +| 게시판 | 3 | 3 | 0 | ✅ 100% | +| 인사관리 | 6 | 6 | 0 | ✅ 100% | +| 고객센터 | 4 | 4 | 0 | ✅ 100% | +| 설정 | 15 | 15 | 0 | ✅ 100% | +| 판매관리 | 5 | 5 | 0 | ✅ 100% | +| 생산관리 | 5 | 5 | 0 | ✅ 100% | +| 구매관리 | 4 | 4 | 0 | ✅ 100% | +| 자재관리 | 2 | 2 | 0 | ✅ 100% | +| 출고관리 | 2 | 2 | 0 | ✅ 100% | +| 회계관리 | 18 | 18 | 0 | ✅ 100% | +| **합계** | **76** | **76** | **0** | **✅ 100%** | + +> ※ 일부 메뉴는 모듈 내 중복 표시됨 (출고관리 > 출고관리). 실제 고유 페이지 기준 63개. + +### ✅ 테스트 깊이 분석 + +| 커버리지 수준 | 메뉴 수 | 설명 | +|-------------|---------|------| +| 🟢 풍부 (5+ 시나리오) | 12개 | 자유게시판, 판매-거래처, 회계-거래처, 매출, 어음, 입금, 사원관리, 근태현황 등 | +| 🟡 충분 (2-4 시나리오) | 25개 | 대부분의 주요 메뉴 | +| 🟠 기본 (1 시나리오) | 26개 | 단순 조회/설정 페이지 | + +### ✅ 최종 판정 + +``` +╔══════════════════════════════════════════════════════╗ +║ ║ +║ 🟢 시나리오 완성도: 100% (63/63 메뉴 커버) ║ +║ 🟢 누락 메뉴: 0개 ║ +║ 🟢 총 시나리오: 209개 ║ +║ 🟢 핵심 시나리오: 63개 (메뉴당 1개 이상) ║ +║ 🟢 보조 시나리오: 146개 (품질 강화) ║ +║ ║ +╚══════════════════════════════════════════════════════╝ +``` + +--- + +## 4. 중복 시나리오 목록 (동일 메뉴에 2개 이상 핵심 시나리오) + +| 메뉴 | 중복 시나리오 | 사유 | +|------|-------------|------| +| 회계 > 거래처관리 | `accounting-client` + `vendor-management` | 기본 테스트 + 검색/필터/네거티브 강화 | +| 회계 > 입금관리 | `accounting-deposit` + `deposit-management` | 기본 테스트 + CRUD 강화 | +| 회계 > 출금관리 | `accounting-withdrawal` + `withdrawal-management` | 기본 테스트 + CRUD 강화 | +| 회계 > 매출관리 | `accounting-sales` + `sales-management` | 기본 조회 + Full CRUD | +| 자재 > 재고현황 | `material-stock` + `inventory-status` | 상세 테스트 + 간단 테스트 | +| 자재 > 입고관리 | `material-receiving` + `receiving-management` | 상세 테스트 + 간단 테스트 | +| 인사 > 사원관리 | `hr-employee` + `employee-register` | 조회/관리 + 등록 흐름 | +| 인사 > 부서관리 | `hr-department` + `department-add` | 조회/관리 + 부서추가 | +| 인사 > 근태현황 | `hr-attendance-status` + `attendance-checkin` | 현황 조회 + 출퇴근 | +| 설정 > 회사정보 | `settings-company` + `company-info` | 간단 테스트 + 상세 테스트 | +| 품목 > 품목기준관리 | `item-master` + `production-item` | 동일 페이지 2개 시나리오 | +| 회계 > 어음관리 | `accounting-bill` + `test-bills-14steps` + `test-bills-minimal` | 핵심 + 테스트 변형 | + +> ※ 중복은 의도적이며 커버리지 강화 목적. 제거 불필요. + +--- + +## 5. 결론 + +**모든 실제 사이드바 메뉴(63개)에 대해 E2E 시나리오가 빠짐없이 존재합니다.** + +- 핵심 페이지 테스트: 63개 메뉴 × 1개 이상 = **100% 커버리지** +- 보조 품질 테스트: 접근성(18), 성능(17), 검색(22), 엣지케이스(13) 등 **146개 추가** +- 비즈니스 워크플로우: 모듈 간 연동 테스트 **5개** +- 데이터 일관성: 크로스 모듈 검증 **1개** +- 전체 209/209 ALL PASS 검증 완료 (2026-03-04) diff --git a/e2e/results/hotfix/Fail-full-crud-acc-sales_2026-02-27_16-04-32.md b/e2e/results/hotfix/Fail-full-crud-acc-sales_2026-02-27_16-04-32.md deleted file mode 100644 index abbf4c2..0000000 --- a/e2e/results/hotfix/Fail-full-crud-acc-sales_2026-02-27_16-04-32.md +++ /dev/null @@ -1,63 +0,0 @@ -# ❌ E2E 테스트 실패: Full CRUD 테스트: 매출관리 - -**테스트 ID**: full-crud-acc-sales | **실행**: 2026-02-27_16-04-32 | **결과**: FAIL -**소요 시간**: 54.0초 - -## 테스트 요약 -| 전체 | 성공 | 실패 | 경고 | 성공률 | -|------|------|------|------|--------| -| 20 | 19 | 1 | 0 | 95% | - -## 실패 스텝 -| # | 스텝 | Phase | 에러 | -|---|------|-------|------| -| 15 | [회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산) | UPDATE | evaluate returned ok:false | - -## 전체 스텝 결과 -| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | -|---|------|-------|------|---------|------| -| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5013ms | Waited 5000ms | -| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | -| 3 | [회계관리 > 매출관리] [CREATE] 매출 등록 버튼 클릭 | CREATE | ✅ | 2512ms | CREATE_OPEN | -| 4 | [회계관리 > 매출관리] [CREATE] 등록 폼 로드 대기 | - | ✅ | 2002ms | Waited 2000ms | -| 5 | [회계관리 > 매출관리] [CREATE] 거래처 선택 + 매출유형 + 품목 입력 + 등록 | CREATE | ✅ | 6623ms | CREATE | -| 6 | [회계관리 > 매출관리] [CREATE] 생성 후 대기 | - | ✅ | 3011ms | Waited 3000ms | -| 7 | [회계관리 > 매출관리] [CREATE] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | -| 8 | [회계관리 > 매출관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2002ms | Waited 2000ms | -| 9 | [회계관리 > 매출관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 503ms | VERIFY_CREATE / rows:20 | -| 10 | [회계관리 > 매출관리] [READ] 상세 페이지 진입 | READ | ✅ | 2510ms | READ | -| 11 | [회계관리 > 매출관리] [READ] 상세 페이지 대기 | - | ✅ | 2003ms | Waited 2000ms | -| 12 | [회계관리 > 매출관리] [READ] 상세 데이터 검증 (품목/수량/단가/공급가액) | READ | ✅ | 2ms | READ_VERIFY | -| 13 | [회계관리 > 매출관리] [UPDATE] 수정 모드 진입 + 수량 변경 + 저장 | UPDATE | ✅ | 5767ms | UPDATE | -| 14 | [회계관리 > 매출관리] [UPDATE] 저장 후 대기 | - | ✅ | 3015ms | Waited 3000ms | -| 15 | [회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산) | UPDATE | ❌ | 1037ms | evaluate returned ok:false | -| 16 | [회계관리 > 매출관리] [UPDATE] 목록 복귀 | UPDATE | ✅ | 0ms | evaluate ok | -| 17 | [회계관리 > 매출관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2005ms | Waited 2000ms | -| 18 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6522ms | DELETE | -| 19 | [회계관리 > 매출관리] [DELETE] 목록 복귀 + 대기 | DELETE | ✅ | 2003ms | evaluate ok | -| 20 | [회계관리 > 매출관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1015ms | VERIFY_DELETE / rows:24 | - -## API 요약 -| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | -|---------|------|------|----------|--------------| -| 27 | 27 | 0 | 60ms | 0 | - -## 페이지 건강 검사 -| 항목 | 결과 | -|------|------| -| 상태 | ✅ 정상 | -| URL | https://dev.codebridge-x.com/accounting/sales | - -## 자동 진단 -| 항목 | 내용 | -|------|------| -| 근본 원인 | **unknown** | -| 스크린샷 | diag_full-crud-acc-sales_2026-02-27_16-04-32.png | - -### 페이지 상태 -| 항목 | 값 | -|------|----| -| DOM 노드 | 1426 | -| 테이블 행 | 24 | -| API 호출 수 | 0 | -| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-full-crud-board_2026-02-27_16-05-29.md b/e2e/results/hotfix/Fail-full-crud-board_2026-02-27_16-05-29.md deleted file mode 100644 index 5fc8e8f..0000000 --- a/e2e/results/hotfix/Fail-full-crud-board_2026-02-27_16-05-29.md +++ /dev/null @@ -1,63 +0,0 @@ -# ❌ E2E 테스트 실패: Full CRUD 테스트: 자유게시판 - -**테스트 ID**: full-crud-board | **실행**: 2026-02-27_16-05-29 | **결과**: FAIL -**소요 시간**: 57.2초 - -## 테스트 요약 -| 전체 | 성공 | 실패 | 경고 | 성공률 | -|------|------|------|------|--------| -| 20 | 19 | 1 | 0 | 95% | - -## 실패 스텝 -| # | 스텝 | Phase | 에러 | -|---|------|-------|------| -| 20 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | E2E_TEST_ 데이터가 여전히 존재 | - -## 전체 스텝 결과 -| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | -|---|------|-------|------|---------|------| -| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | -| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | -| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5954ms | CREATE | -| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3001ms | Waited 3000ms | -| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2013ms | evaluate ok | -| 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2002ms | Waited 2000ms | -| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 520ms | VERIFY_CREATE / rows:10 | -| 8 | [게시판 > 자유게시판] [READ] 상세 페이지 진입 | READ | ✅ | 2514ms | READ | -| 9 | [게시판 > 자유게시판] [READ] 상세 페이지 대기 | - | ✅ | 2002ms | Waited 2000ms | -| 10 | [게시판 > 자유게시판] [READ] 상세 데이터 검증 | READ | ✅ | 2ms | READ_VERIFY | -| 11 | [게시판 > 자유게시판] [UPDATE] 수정 및 저장 | UPDATE | ✅ | 5229ms | UPDATE | -| 12 | [게시판 > 자유게시판] [UPDATE] 저장 후 대기 | - | ✅ | 3015ms | Waited 3000ms | -| 13 | [게시판 > 자유게시판] [UPDATE] 수정 내용 검증 | UPDATE | ✅ | 2ms | VERIFY_UPDATE | -| 14 | [게시판 > 자유게시판] [UPDATE] 목록 복귀 | UPDATE | ✅ | 2007ms | evaluate ok | -| 15 | [게시판 > 자유게시판] [UPDATE] 목록 안정화 대기 | - | ✅ | 2008ms | Waited 2000ms | -| 16 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 6526ms | DELETE | -| 17 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3008ms | Waited 3000ms | -| 18 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 2018ms | evaluate ok | -| 19 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | -| 20 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ❌ | 4028ms | E2E_TEST_ 데이터가 여전히 존재 | - -## API 요약 -| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | -|---------|------|------|----------|--------------| -| 38 | 38 | 0 | 67ms | 0 | - -## 페이지 건강 검사 -| 항목 | 결과 | -|------|------| -| 상태 | ✅ 정상 | -| URL | https://dev.codebridge-x.com/boards/free | - -## 자동 진단 -| 항목 | 내용 | -|------|------| -| 근본 원인 | **unknown** | -| 스크린샷 | diag_full-crud-board_2026-02-27_16-05-29.png | - -### 페이지 상태 -| 항목 | 값 | -|------|----| -| DOM 노드 | 915 | -| 테이블 행 | 10 | -| API 호출 수 | 0 | -| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-hr-salary-long-term-care_2026-03-03_20-41-41.md b/e2e/results/hotfix/Fail-hr-salary-long-term-care_2026-03-03_20-41-41.md new file mode 100644 index 0000000..8786f44 --- /dev/null +++ b/e2e/results/hotfix/Fail-hr-salary-long-term-care_2026-03-03_20-41-41.md @@ -0,0 +1,62 @@ +# ❌ E2E 테스트 실패: 급여 장기요양보험 필드 검증 테스트 + +**테스트 ID**: hr-salary-long-term-care | **실행**: 2026-03-03_20-41-41 | **결과**: FAIL +**소요 시간**: 20.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 15 | 1 | 0 | 94% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 12 | [CREATE] 등록 다이얼로그 대기 | CREATE | Step timeout (>3s): [CREATE] 등록 다이얼로그 대기 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 급여관리 | - | ✅ | 2506ms | Menu navigation: 인사관리 > 급여관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 3 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/salary-management | +| 4 | 목업 감지 | - | ✅ | 1ms | Real page: 1 inputs, 37 buttons | +| 5 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 2 rows | +| 6 | [READ] 첫 번째 행 클릭 (상세 다이얼로그 열기) | READ | ✅ | 502ms | Clicked first row | +| 7 | [READ] 상세 다이얼로그 대기 | READ | ✅ | 2012ms | Waited 2000ms | +| 8 | [READ] 장기요양보험 필드 존재 확인 (상세) | READ | ✅ | 3ms | DETAIL_LTC_CHECK / pass: 장기요양보험 필드 발견 | +| 9 | [READ] 건강보험/장기요양 값 비교 (자동계산 검증) | READ | ✅ | 1ms | CALC_VERIFY / warn: 건강보험(null) 또는 장기요양(null) 값 미확인 | +| 10 | [READ] 상세 다이얼로그 닫기 | READ | ✅ | 1ms | No modal open | +| 11 | [CREATE] 등록 다이얼로그 열기 | CREATE | ✅ | 2514ms | CREATE_OPEN | +| 12 | [CREATE] 등록 다이얼로그 대기 | CREATE | ❌ | 3014ms | Step timeout (>3s): [CREATE] 등록 다이얼로그 대기 | +| 13 | [CREATE] 등록 폼에서 장기요양보험 필드 확인 | CREATE | ✅ | 1ms | CREATE_LTC_CHECK / pass: 등록 폼에 장기요양보험 필드 존재 (입력 가능) | +| 14 | [CREATE] 건강보험 입력 → 장기요양 자동계산 검증 | CREATE | ✅ | 1ms | AUTO_CALC / 건강보험 입력 필드 미발견 | +| 15 | [CREATE] 등록 다이얼로그 닫기 (데이터 저장 안함) | CREATE | ✅ | 2ms | json_fail:Unexpected token 'p', "pass: dialog closed" is not valid JSON/raw:pass | +| 16 | [SUMMARY] API 호출 통계 | - | ✅ | 1ms | json_fail:Unexpected token 'p', "pass: API "... is not valid JSON/raw:pass: API | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/salary-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **element_timeout** | +| 스크린샷 | diag_hr-salary-long-term-care_2026-03-03_20-41-40.png | + +### 권장 조치 +1. 요소 대기 타임아웃. 페이지 로드 지연 또는 셀렉터 불일치 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 1022 | +| 테이블 행 | 2 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-reload-persist-acc-deposit_2026-03-03_22-13-33.md b/e2e/results/hotfix/Fail-reload-persist-acc-deposit_2026-03-03_22-13-33.md new file mode 100644 index 0000000..c22f893 --- /dev/null +++ b/e2e/results/hotfix/Fail-reload-persist-acc-deposit_2026-03-03_22-13-33.md @@ -0,0 +1,33 @@ +# ❌ E2E 테스트 실패: 새로고침 데이터 유지 검증: 입금관리 + +**테스트 ID**: reload-persist-acc-deposit | **실행**: 2026-03-03_22-13-33 | **결과**: FAIL +**소요 시간**: 19.6초 | **에러**: Evaluate failed: page.evaluate: Target page, context or browser has been closed | **중단 사유**: evaluate_error + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-reload-persist-acc-sales_2026-03-03_22-13-35.md b/e2e/results/hotfix/Fail-reload-persist-acc-sales_2026-03-03_22-13-35.md new file mode 100644 index 0000000..b0aa494 --- /dev/null +++ b/e2e/results/hotfix/Fail-reload-persist-acc-sales_2026-03-03_22-13-35.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 새로고침 데이터 유지 검증: 매출관리 + +**테스트 ID**: reload-persist-acc-sales | **실행**: 2026-03-03_22-13-35 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-reload-persist-board_2026-03-03_22-13-37.md b/e2e/results/hotfix/Fail-reload-persist-board_2026-03-03_22-13-37.md new file mode 100644 index 0000000..9ebd66a --- /dev/null +++ b/e2e/results/hotfix/Fail-reload-persist-board_2026-03-03_22-13-37.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 새로고침 데이터 유지 검증: 자유게시판 + +**테스트 ID**: reload-persist-board | **실행**: 2026-03-03_22-13-37 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-client_2026-03-03_22-13-39.md b/e2e/results/hotfix/Fail-sales-client_2026-03-03_22-13-39.md new file mode 100644 index 0000000..12c5698 --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-client_2026-03-03_22-13-39.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 판매거래처관리 테스트 + +**테스트 ID**: sales-client | **실행**: 2026-03-03_22-13-39 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-management_2026-02-27_16-08-22.md b/e2e/results/hotfix/Fail-sales-management_2026-03-02_00-02-06.md similarity index 70% rename from e2e/results/hotfix/Fail-sales-management_2026-02-27_16-08-22.md rename to e2e/results/hotfix/Fail-sales-management_2026-03-02_00-02-06.md index 47b0fe1..76bd2b0 100644 --- a/e2e/results/hotfix/Fail-sales-management_2026-02-27_16-08-22.md +++ b/e2e/results/hotfix/Fail-sales-management_2026-03-02_00-02-06.md @@ -1,7 +1,7 @@ # ❌ E2E 테스트 실패: Full CRUD 테스트: 매출관리 -**테스트 ID**: sales-management | **실행**: 2026-02-27_16-08-22 | **결과**: FAIL -**소요 시간**: 59.0초 +**테스트 ID**: sales-management | **실행**: 2026-03-02_00-02-06 | **결과**: FAIL +**소요 시간**: 59.1초 ## 테스트 요약 | 전체 | 성공 | 실패 | 경고 | 성공률 | @@ -18,32 +18,32 @@ |---|------|-------|------|---------|------| | 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | | 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | -| 3 | [회계관리 > 매출관리] [INSPECT] UI 구조 검증 + 초기 행수 저장 | INSPECT | ✅ | 2ms | INSPECT / rows:20,cols:10 / rows:20 | -| 4 | [회계관리 > 매출관리] [CREATE] 매출 등록 버튼 클릭 | CREATE | ✅ | 307ms | Clicked button: 등록 | -| 5 | [회계관리 > 매출관리] [CREATE] 등록 폼 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | -| 6 | [회계관리 > 매출관리] [CREATE] 거래처+매출유형+품목 입력 + 자동계산 검증 + 등록 | CREATE | ✅ | 10060ms | CREATE | -| 7 | [회계관리 > 매출관리] [CREATE] 등록 후 대기 | - | ✅ | 3009ms | Waited 3000ms | -| 8 | [회계관리 > 매출관리] [CREATE] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | -| 9 | [회계관리 > 매출관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2012ms | Waited 2000ms | -| 10 | [회계관리 > 매출관리] [VERIFY] 생성 데이터 확인 (행수 증가 + 금액 대조) | VERIFY | ✅ | 502ms | VERIFY_CREATE / rows:20 | -| 11 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 페이지 진입 | READ | ✅ | 2516ms | READ | -| 12 | [회계관리 > 매출관리] [READ] 상세 페이지 대기 | - | ✅ | 2001ms | Waited 2000ms | -| 13 | [회계관리 > 매출관리] [READ] 상세 데이터 검증 (E2E_TEST_ 품목명/적요/금액) | READ | ✅ | 2ms | READ_VERIFY | -| 14 | [회계관리 > 매출관리] [UPDATE] 수정 모드 진입 + 수량 변경(10→20) + 재계산 검증 + 저장 | UPDATE | ✅ | 7652ms | UPDATE | -| 15 | [회계관리 > 매출관리] [UPDATE] 저장 후 대기 | - | ✅ | 3012ms | Waited 3000ms | -| 16 | [회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산 확인) | UPDATE | ❌ | 1019ms | evaluate returned ok:false | +| 3 | [회계관리 > 매출관리] [INSPECT] UI 구조 검증 + 초기 행수 저장 | INSPECT | ✅ | 1ms | INSPECT / rows:20,cols:10 / rows:20 | +| 4 | [회계관리 > 매출관리] [CREATE] 매출 등록 버튼 클릭 | CREATE | ✅ | 332ms | Clicked button: 등록 | +| 5 | [회계관리 > 매출관리] [CREATE] 등록 폼 로드 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 6 | [회계관리 > 매출관리] [CREATE] 거래처+매출유형+품목 입력 + 자동계산 검증 + 등록 | CREATE | ✅ | 10055ms | CREATE | +| 7 | [회계관리 > 매출관리] [CREATE] 등록 후 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 8 | [회계관리 > 매출관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2ms | evaluate ok | +| 9 | [회계관리 > 매출관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 10 | [회계관리 > 매출관리] [VERIFY] 생성 데이터 확인 (행수 증가 + 금액 대조) | VERIFY | ✅ | 515ms | VERIFY_CREATE / rows:20 | +| 11 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 페이지 진입 | READ | ✅ | 2515ms | READ | +| 12 | [회계관리 > 매출관리] [READ] 상세 페이지 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 13 | [회계관리 > 매출관리] [READ] 상세 데이터 검증 (E2E_TEST_ 품목명/적요/금액) | READ | ✅ | 3ms | READ_VERIFY | +| 14 | [회계관리 > 매출관리] [UPDATE] 수정 모드 진입 + 수량 변경(10→20) + 재계산 검증 + 저장 | UPDATE | ✅ | 7648ms | UPDATE | +| 15 | [회계관리 > 매출관리] [UPDATE] 저장 후 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 16 | [회계관리 > 매출관리] [UPDATE] 수정 내용 검증 (공급가액 1,000,000 재계산 확인) | UPDATE | ❌ | 1020ms | evaluate returned ok:false | | 17 | [회계관리 > 매출관리] [UPDATE] 목록 복귀 | UPDATE | ✅ | 0ms | evaluate ok | -| 18 | [회계관리 > 매출관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2017ms | Waited 2000ms | -| 19 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 (첫 행 → 상세 → 삭제 → 확인) | DELETE | ✅ | 6524ms | DELETE | -| 20 | [회계관리 > 매출관리] [DELETE] 삭제 후 대기 | - | ✅ | 3007ms | Waited 3000ms | -| 21 | [회계관리 > 매출관리] [DELETE] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | -| 22 | [회계관리 > 매출관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | -| 23 | [회계관리 > 매출관리] [VERIFY] 삭제 확인 (행수 원복 검증) | VERIFY | ✅ | 1016ms | VERIFY_DELETE / rows:24,E2E data removed / rows:24 | +| 18 | [회계관리 > 매출관리] [UPDATE] 목록 안정화 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 19 | [회계관리 > 매출관리] [DELETE] 데이터 삭제 (첫 행 → 상세 → 삭제 → 확인) | DELETE | ✅ | 6518ms | DELETE | +| 20 | [회계관리 > 매출관리] [DELETE] 삭제 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 21 | [회계관리 > 매출관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 매출관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 23 | [회계관리 > 매출관리] [VERIFY] 삭제 확인 (행수 원복 검증) | VERIFY | ✅ | 1005ms | VERIFY_DELETE / rows:27,E2E data removed / rows:27 | ## API 요약 | 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | |---------|------|------|----------|--------------| -| 27 | 27 | 0 | 66ms | 0 | +| 27 | 27 | 0 | 69ms | 0 | ## 페이지 건강 검사 | 항목 | 결과 | @@ -55,12 +55,12 @@ | 항목 | 내용 | |------|------| | 근본 원인 | **unknown** | -| 스크린샷 | diag_sales-management_2026-02-27_16-08-22.png | +| 스크린샷 | diag_sales-management_2026-03-02_00-02-06.png | ### 페이지 상태 | 항목 | 값 | |------|----| -| DOM 노드 | 1426 | -| 테이블 행 | 24 | +| DOM 노드 | 1480 | +| 테이블 행 | 27 | | API 호출 수 | 0 | | 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-sales-management_2026-03-03_22-13-41.md b/e2e/results/hotfix/Fail-sales-management_2026-03-03_22-13-41.md new file mode 100644 index 0000000..5275e8e --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-management_2026-03-03_22-13-41.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: Full CRUD 테스트: 매출관리 + +**테스트 ID**: sales-management | **실행**: 2026-03-03_22-13-41 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-order-bulk-delete_2026-03-03_22-13-43.md b/e2e/results/hotfix/Fail-sales-order-bulk-delete_2026-03-03_22-13-43.md new file mode 100644 index 0000000..f01d216 --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-order-bulk-delete_2026-03-03_22-13-43.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 수주 일괄삭제 테스트 + +**테스트 ID**: sales-order-bulk-delete | **실행**: 2026-03-03_22-13-43 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-order_2026-03-03_22-13-45.md b/e2e/results/hotfix/Fail-sales-order_2026-03-03_22-13-45.md new file mode 100644 index 0000000..91aa99c --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-order_2026-03-03_22-13-45.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 수주관리 CRUD + 계산검증 테스트 + +**테스트 ID**: sales-order | **실행**: 2026-03-03_22-13-45 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-pricing_2026-03-03_22-13-47.md b/e2e/results/hotfix/Fail-sales-pricing_2026-03-03_22-13-47.md new file mode 100644 index 0000000..77868bb --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-pricing_2026-03-03_22-13-47.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 단가관리 테스트 + +**테스트 ID**: sales-pricing | **실행**: 2026-03-03_22-13-47 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-quotation_2026-03-03_22-13-49.md b/e2e/results/hotfix/Fail-sales-quotation_2026-03-03_22-13-49.md new file mode 100644 index 0000000..3337bd8 --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-quotation_2026-03-03_22-13-49.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 견적관리 CRUD + 계산검증 테스트 + +**테스트 ID**: sales-quotation | **실행**: 2026-03-03_22-13-49 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-sales-site-mgmt_2026-03-03_22-13-51.md b/e2e/results/hotfix/Fail-sales-site-mgmt_2026-03-03_22-13-51.md new file mode 100644 index 0000000..272207a --- /dev/null +++ b/e2e/results/hotfix/Fail-sales-site-mgmt_2026-03-03_22-13-51.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 현장관리 테스트 + +**테스트 ID**: sales-site-mgmt | **실행**: 2026-03-03_22-13-51 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-bug-draft_2026-03-03_22-13-53.md b/e2e/results/hotfix/Fail-search-bug-draft_2026-03-03_22-13-53.md new file mode 100644 index 0000000..e3700ad --- /dev/null +++ b/e2e/results/hotfix/Fail-search-bug-draft_2026-03-03_22-13-53.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 기안함 검색 버그 상세 검증 + +**테스트 ID**: search-bug-draft | **실행**: 2026-03-03_22-13-53 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-bug-salary_2026-03-03_22-13-55.md b/e2e/results/hotfix/Fail-search-bug-salary_2026-03-03_22-13-55.md new file mode 100644 index 0000000..5d39dd1 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-bug-salary_2026-03-03_22-13-55.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 급여관리 검색 버그 상세 검증 + +**테스트 ID**: search-bug-salary | **실행**: 2026-03-03_22-13-55 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-filter-acc-sales_2026-03-03_22-13-57.md b/e2e/results/hotfix/Fail-search-filter-acc-sales_2026-03-03_22-13-57.md new file mode 100644 index 0000000..d10eb37 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-filter-acc-sales_2026-03-03_22-13-57.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색/필터/페이지네이션 테스트: 매출관리 + +**테스트 ID**: search-filter-acc-sales | **실행**: 2026-03-03_22-13-57 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-acc_2026-03-03_22-13-59.md b/e2e/results/hotfix/Fail-search-function-acc_2026-03-03_22-13-59.md new file mode 100644 index 0000000..cbe2a5f --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-acc_2026-03-03_22-13-59.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 동작 검증: 회계 + +**테스트 ID**: search-function-acc | **실행**: 2026-03-03_22-13-59 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-audit-acc1_2026-03-03_22-14-01.md b/e2e/results/hotfix/Fail-search-function-audit-acc1_2026-03-03_22-14-01.md new file mode 100644 index 0000000..1f6c317 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-audit-acc1_2026-03-03_22-14-01.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 감사: 회계관리 (1/6) + +**테스트 ID**: search-function-audit-acc1 | **실행**: 2026-03-03_22-14-01 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-audit-acc2-hr_2026-03-03_22-14-03.md b/e2e/results/hotfix/Fail-search-function-audit-acc2-hr_2026-03-03_22-14-03.md new file mode 100644 index 0000000..ed226c4 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-audit-acc2-hr_2026-03-03_22-14-03.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 감사: 회계관리2+인사관리 (2/6) + +**테스트 ID**: search-function-audit-acc2-hr | **실행**: 2026-03-03_22-14-03 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-audit-boards_2026-03-03_22-14-05.md b/e2e/results/hotfix/Fail-search-function-audit-boards_2026-03-03_22-14-05.md new file mode 100644 index 0000000..6789f79 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-audit-boards_2026-03-03_22-14-05.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 감사: 게시판/고객센터/설정1 (5/6) + +**테스트 ID**: search-function-audit-boards | **실행**: 2026-03-03_22-14-05 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-audit-production_2026-03-03_22-14-07.md b/e2e/results/hotfix/Fail-search-function-audit-production_2026-03-03_22-14-07.md new file mode 100644 index 0000000..2c199c8 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-audit-production_2026-03-03_22-14-07.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 감사: 생산/품목/품질/자재 (3/6) + +**테스트 ID**: search-function-audit-production | **실행**: 2026-03-03_22-14-07 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-audit-sales-approval_2026-03-03_22-14-09.md b/e2e/results/hotfix/Fail-search-function-audit-sales-approval_2026-03-03_22-14-09.md new file mode 100644 index 0000000..a69e5c0 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-audit-sales-approval_2026-03-03_22-14-09.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 감사: 판매/출고/결재 (4/6) + +**테스트 ID**: search-function-audit-sales-approval | **실행**: 2026-03-03_22-14-09 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-audit-settings_2026-03-03_22-14-11.md b/e2e/results/hotfix/Fail-search-function-audit-settings_2026-03-03_22-14-11.md new file mode 100644 index 0000000..0847010 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-audit-settings_2026-03-03_22-14-11.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 감사: 설정2 (6/6) + +**테스트 ID**: search-function-audit-settings | **실행**: 2026-03-03_22-14-11 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-hr-board_2026-03-03_22-14-13.md b/e2e/results/hotfix/Fail-search-function-hr-board_2026-03-03_22-14-13.md new file mode 100644 index 0000000..f748bfd --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-hr-board_2026-03-03_22-14-13.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 동작 검증: 인사/게시판 + +**테스트 ID**: search-function-hr-board | **실행**: 2026-03-03_22-14-13 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-function-sales_2026-03-03_22-14-15.md b/e2e/results/hotfix/Fail-search-function-sales_2026-03-03_22-14-15.md new file mode 100644 index 0000000..9afe8cd --- /dev/null +++ b/e2e/results/hotfix/Fail-search-function-sales_2026-03-03_22-14-15.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 기능 동작 검증: 판매 + +**테스트 ID**: search-function-sales | **실행**: 2026-03-03_22-14-15 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-options-acc-1_2026-03-03_22-14-17.md b/e2e/results/hotfix/Fail-search-options-acc-1_2026-03-03_22-14-17.md new file mode 100644 index 0000000..1dc4aac --- /dev/null +++ b/e2e/results/hotfix/Fail-search-options-acc-1_2026-03-03_22-14-17.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 옵션 전수 테스트: 회계거래처/입금/출금 (1/10) + +**테스트 ID**: search-options-acc-1 | **실행**: 2026-03-03_22-14-17 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-options-acc-2_2026-03-03_22-14-19.md b/e2e/results/hotfix/Fail-search-options-acc-2_2026-03-03_22-14-19.md new file mode 100644 index 0000000..b41fb22 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-options-acc-2_2026-03-03_22-14-19.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 옵션 전수 테스트: 매입/매출/카드내역 (2/10) + +**테스트 ID**: search-options-acc-2 | **실행**: 2026-03-03_22-14-19 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-search-options-acc-3_2026-03-03_22-14-21.md b/e2e/results/hotfix/Fail-search-options-acc-3_2026-03-03_22-14-21.md new file mode 100644 index 0000000..85bec74 --- /dev/null +++ b/e2e/results/hotfix/Fail-search-options-acc-3_2026-03-03_22-14-21.md @@ -0,0 +1,27 @@ +# ❌ E2E 테스트 실패: 검색 옵션 전수 테스트: 어음/추심/계좌 (3/11) + +**테스트 ID**: search-options-acc-3 | **실행**: 2026-03-03_22-14-21 | **결과**: FAIL +**소요 시간**: 2.0초 | **에러**: page.evaluate: Target page, context or browser has been closed | **중단 사유**: exception + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 0 | 0 | 0 | 0 | 0% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| - | (스텝 없음) | - | - | - | - | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **page_unresponsive** | + +### 권장 조치 +1. 페이지 응답 없음 (evaluate 실패). 네비게이션 에러 또는 크래시 diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-41-16.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-41-16.md new file mode 100644 index 0000000..39c4fe9 --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-41-16.md @@ -0,0 +1,78 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_19-41-16 | **결과**: FAIL +**소요 시간**: 41.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 29 | 21 | 4 | 4 | 72% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 7 | [CREATE] 등록 다이얼로그 대기 | CREATE | Step timeout (>3s): [CREATE] 등록 다이얼로그 대기 | +| 18 | [UPDATE] 수정 다이얼로그 대기 | UPDATE | Step timeout (>3s): [UPDATE] 수정 다이얼로그 대기 | +| 20 | [UPDATE] 수정 버튼 클릭 | UPDATE | 수정 버튼 없음 | +| 24 | [DELETE] 삭제 다이얼로그 대기 | DELETE | Step timeout (>3s): [DELETE] 삭제 다이얼로그 대기 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 516ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 3 | 목업 감지 | - | ⚠️ | 1019ms | Possible mockup page (score: 2) | +| 4 | 목록 탭 전환 | - | ✅ | 1513ms | TAB_SWITCH | +| 5 | 목록 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 6 | [CREATE] ts 초기화 + 등록 버튼 클릭 | CREATE | ✅ | 1006ms | CREATE_OPEN | +| 7 | [CREATE] 등록 다이얼로그 대기 | CREATE | ❌ | 3012ms | Step timeout (>3s): [CREATE] 등록 다이얼로그 대기 | +| 8 | [CREATE] 일정명 입력 | CREATE | ✅ | 315ms | FILL_NAME | +| 9 | [CREATE] 유형 선택: 회사일정 | CREATE | ✅ | 1ms | SELECT_TYPE / 유형 선택 미발견 | +| 10 | [CREATE] 시작일/종료일 날짜 선택 | CREATE | ✅ | 1ms | DATE_PICK | +| 11 | [CREATE] 메모 입력 | CREATE | ✅ | 218ms | FILL_MEMO | +| 12 | [CREATE] 등록 버튼 클릭 | CREATE | ✅ | 3017ms | SUBMIT | +| 13 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2551ms | No toast/notification found | +| 14 | [CREATE] API POST 검증 | CREATE | ✅ | 0ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 15 | [CREATE] 모달 닫힘 확인 + 목록 대기 | CREATE | ✅ | 1011ms | json_fail:Unexpected token 'p', "pass: moda"... is not valid JSON/raw:pass: moda | +| 16 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1018ms | VERIFY_LIST / rows:18 | +| 17 | [UPDATE] E2E 일정 행 클릭 (수정 다이얼로그 열기) | UPDATE | ✅ | 2ms | EDIT_OPEN / 행 없음 | +| 18 | [UPDATE] 수정 다이얼로그 대기 | UPDATE | ❌ | 3014ms | Step timeout (>3s): [UPDATE] 수정 다이얼로그 대기 | +| 19 | [UPDATE] 일정명 수정 | UPDATE | ✅ | 318ms | EDIT_NAME | +| 20 | [UPDATE] 수정 버튼 클릭 | UPDATE | ❌ | 1020ms | 수정 버튼 없음 | +| 21 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2553ms | No toast/notification found | +| 22 | [UPDATE] API PUT 검증 | UPDATE | ✅ | 1ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 23 | [DELETE] E2E 일정 행 클릭 (삭제 다이얼로그 열기) | DELETE | ✅ | 1010ms | DELETE_OPEN | +| 24 | [DELETE] 삭제 다이얼로그 대기 | DELETE | ❌ | 3016ms | Step timeout (>3s): [DELETE] 삭제 다이얼로그 대기 | +| 25 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | DELETE_CLICK / 삭제 버튼 없음 | +| 26 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2539ms | No toast/notification found | +| 27 | [DELETE] API DELETE 검증 | DELETE | ✅ | 0ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 28 | [DELETE] 목록에서 삭제 확인 | DELETE | ✅ | 1014ms | VERIFY_DELETED / pass: E2E data removed | +| 29 | [SUMMARY] API 호출 통계 | - | ✅ | 1ms | json_fail:Unexpected token 'p', "pass: Cale"... is not valid JSON/raw:pass: Cale | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 115ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **element_timeout** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_19-41-15.png | + +### 권장 조치 +1. 요소 대기 타임아웃. 페이지 로드 지연 또는 셀렉터 불일치 + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 2076 | +| 테이블 행 | 0 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-48-19.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-48-19.md new file mode 100644 index 0000000..1601ac7 --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-48-19.md @@ -0,0 +1,72 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_19-48-19 | **결과**: FAIL +**소요 시간**: 41.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 29 | 24 | 1 | 4 | 83% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 20 | [UPDATE] 수정 버튼 클릭 | UPDATE | 수정 버튼 없음 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 521ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 3 | 목업 감지 | - | ⚠️ | 1017ms | Possible mockup page (score: 2) | +| 4 | 목록 탭 전환 | - | ✅ | 1511ms | TAB_SWITCH | +| 5 | 목록 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | [CREATE] ts 초기화 + 등록 버튼 클릭 | CREATE | ✅ | 1002ms | CREATE_OPEN | +| 7 | [CREATE] 등록 다이얼로그 대기 | CREATE | ✅ | 1500ms | Waited 1500ms | +| 8 | [CREATE] 일정명 입력 | CREATE | ✅ | 316ms | FILL_NAME | +| 9 | [CREATE] 유형 선택: 회사일정 | CREATE | ✅ | 1ms | SELECT_TYPE / 유형 선택 미발견 | +| 10 | [CREATE] 시작일/종료일 날짜 선택 | CREATE | ✅ | 1514ms | DATE_PICK | +| 11 | [CREATE] 메모 입력 | CREATE | ✅ | 218ms | FILL_MEMO | +| 12 | [CREATE] 등록 버튼 클릭 | CREATE | ✅ | 3016ms | SUBMIT | +| 13 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2539ms | No toast/notification found | +| 14 | [CREATE] API POST 검증 | CREATE | ✅ | 1ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 15 | [CREATE] 모달 닫힘 확인 + 목록 대기 | CREATE | ✅ | 1012ms | json_fail:Unexpected token 'p', "pass: moda"... is not valid JSON/raw:pass: moda | +| 16 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1004ms | VERIFY_LIST / rows:28 | +| 17 | [UPDATE] E2E 일정 행 클릭 (수정 다이얼로그 열기) | UPDATE | ✅ | 1513ms | EDIT_OPEN / E2E 행 미발견, 첫 행 사용 | +| 18 | [UPDATE] 수정 다이얼로그 대기 | UPDATE | ✅ | 1500ms | Waited 1500ms | +| 19 | [UPDATE] 일정명 수정 | UPDATE | ✅ | 326ms | EDIT_NAME | +| 20 | [UPDATE] 수정 버튼 클릭 | UPDATE | ❌ | 1025ms | 수정 버튼 없음 | +| 21 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2536ms | No toast/notification found | +| 22 | [UPDATE] API PUT 검증 | UPDATE | ✅ | 0ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 23 | [DELETE] E2E 일정 행 클릭 (삭제 다이얼로그 열기) | DELETE | ✅ | 2514ms | DELETE_OPEN / E2E 행 미발견, 첫 행 사용 | +| 24 | [DELETE] 삭제 다이얼로그 대기 | DELETE | ✅ | 1513ms | Waited 1500ms | +| 25 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | DELETE_CLICK / 삭제 버튼 없음 | +| 26 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2541ms | No toast/notification found | +| 27 | [DELETE] API DELETE 검증 | DELETE | ✅ | 0ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 28 | [DELETE] 목록에서 삭제 확인 | DELETE | ✅ | 1003ms | VERIFY_DELETED / pass: E2E data removed | +| 29 | [SUMMARY] API 호출 통계 | - | ✅ | 0ms | json_fail:Unexpected token 'p', "pass: Cale"... is not valid JSON/raw:pass: Cale | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 97ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_19-48-19.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 2284 | +| 테이블 행 | 5 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-55-12.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-55-12.md new file mode 100644 index 0000000..9cabf7f --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_19-55-12.md @@ -0,0 +1,73 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_19-55-12 | **결과**: FAIL +**소요 시간**: 42.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 29 | 23 | 2 | 4 | 79% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 20 | [UPDATE] 수정 버튼 클릭 | UPDATE | 다이얼로그 미열림 | +| 28 | [DELETE] 목록에서 삭제 확인 | DELETE | evaluate returned ok:false | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 522ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 3 | 목업 감지 | - | ⚠️ | 1016ms | Possible mockup page (score: 2) | +| 4 | 목록 탭 전환 | - | ✅ | 1514ms | TAB_SWITCH | +| 5 | 목록 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | [CREATE] ts 초기화 + 등록 버튼 클릭 | CREATE | ✅ | 1021ms | CREATE_OPEN | +| 7 | [CREATE] 등록 다이얼로그 대기 | CREATE | ✅ | 1510ms | Waited 1500ms | +| 8 | [CREATE] 일정명 입력 | CREATE | ✅ | 321ms | FILL_NAME | +| 9 | [CREATE] 유형 선택: 회사일정 | CREATE | ✅ | 1015ms | SELECT_TYPE | +| 10 | [CREATE] 시작일/종료일 날짜 선택 | CREATE | ✅ | 2052ms | DATE_PICK | +| 11 | [CREATE] 메모 입력 | CREATE | ✅ | 210ms | FILL_MEMO | +| 12 | [CREATE] 등록 버튼 클릭 | CREATE | ✅ | 3017ms | SUBMIT | +| 13 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2535ms | No toast/notification found | +| 14 | [CREATE] API POST 검증 | CREATE | ✅ | 1ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 15 | [CREATE] 모달 닫힘 확인 + 목록 대기 | CREATE | ✅ | 1014ms | json_fail:Unexpected token 'p', "pass: moda"... is not valid JSON/raw:pass: moda | +| 16 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1014ms | VERIFY_LIST / rows:17 | +| 17 | [UPDATE] E2E 일정 행 클릭 (수정 다이얼로그 열기) | UPDATE | ✅ | 0ms | EDIT_OPEN / 행 없음 | +| 18 | [UPDATE] 수정 다이얼로그 대기 | UPDATE | ✅ | 1500ms | Waited 1500ms | +| 19 | [UPDATE] 일정명 수정 | UPDATE | ✅ | 1ms | EDIT_NAME / 일정명 필드 미발견 | +| 20 | [UPDATE] 수정 버튼 클릭 | UPDATE | ❌ | 1007ms | 다이얼로그 미열림 | +| 21 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2549ms | No toast/notification found | +| 22 | [UPDATE] API PUT 검증 | UPDATE | ✅ | 1ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 23 | [DELETE] E2E 일정 행 클릭 (삭제 다이얼로그 열기) | DELETE | ✅ | 1016ms | DELETE_OPEN | +| 24 | [DELETE] 삭제 다이얼로그 대기 | DELETE | ✅ | 1511ms | Waited 1500ms | +| 25 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 2ms | DELETE_CLICK / 삭제 버튼 없음 | +| 26 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2539ms | No toast/notification found | +| 27 | [DELETE] API DELETE 검증 | DELETE | ✅ | 0ms | json_fail:Unexpected token 'w', "warn: no c"... is not valid JSON/raw:warn: no c | +| 28 | [DELETE] 목록에서 삭제 확인 | DELETE | ❌ | 4048ms | evaluate returned ok:false | +| 29 | [SUMMARY] API 호출 통계 | - | ✅ | 0ms | json_fail:Unexpected token 'p', "pass: Cale"... is not valid JSON/raw:pass: Cale | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_19-55-11.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 2020 | +| 테이블 행 | 0 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-03-58.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-03-58.md new file mode 100644 index 0000000..85c0096 --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-03-58.md @@ -0,0 +1,64 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_20-03-58 | **결과**: FAIL +**소요 시간**: 37.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 20 | 15 | 2 | 3 | 75% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | 다이얼로그 미열림 | +| 19 | [DELETE] 목록에서 삭제 확인 | DELETE | evaluate returned ok:false | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 512ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 3 | 목록 탭 전환 | - | ✅ | 1518ms | TAB_SWITCH | +| 4 | 테이블 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | [CREATE] ts 초기화 + 등록 다이얼로그 열기 | CREATE | ✅ | 1504ms | CREATE_OPEN | +| 6 | [CREATE] 폼 입력 + 등록 (일정명/유형/날짜/메모) | CREATE | ✅ | 6599ms | CREATE_FORM | +| 7 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2554ms | No toast/notification found | +| 8 | [CREATE] API POST 검증 | CREATE | ✅ | 0ms | warn: no calendar POST found | +| 9 | [CREATE] 모달 닫힘 확인 + 목록 대기 | CREATE | ✅ | 1013ms | MODAL_CHECK | +| 10 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1015ms | VERIFY_LIST / rows:0 | +| 11 | [UPDATE] E2E 일정 행 클릭 → 수정 다이얼로그 | UPDATE | ✅ | 1ms | EDIT_OPEN / 테이블 행 없음 | +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | ❌ | 1028ms | 다이얼로그 미열림 | +| 13 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2538ms | No toast/notification found | +| 14 | [UPDATE] API PUT 검증 | UPDATE | ✅ | 0ms | warn: no calendar PUT found | +| 15 | [UPDATE] 모달 닫힘 확인 | UPDATE | ✅ | 501ms | MODAL_CLOSE | +| 16 | [DELETE] E2E 수정일정 행 클릭 → 삭제 | DELETE | ✅ | 1015ms | DELETE_FLOW / E2E 행 없음 | +| 17 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2548ms | No toast/notification found | +| 18 | [DELETE] API DELETE 검증 | DELETE | ✅ | 0ms | warn: no calendar DELETE found | +| 19 | [DELETE] 목록에서 삭제 확인 | DELETE | ❌ | 4022ms | evaluate returned ok:false | +| 20 | [SUMMARY] API 호출 통계 | - | ✅ | 1ms | Calendar API: total=0 GET=0 POST=0 PUT=0 DELETE=0 success=0 failed=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 109ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_20-03-58.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 2026 | +| 테이블 행 | 0 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-18-14.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-18-14.md new file mode 100644 index 0000000..5b47d84 --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-18-14.md @@ -0,0 +1,63 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_20-18-14 | **결과**: FAIL +**소요 시간**: 42.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 20 | 16 | 1 | 3 | 80% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | 다이얼로그 미열림 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 526ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 3 | 목록 탭 전환 (PointerEvent) | - | ✅ | 2003ms | TAB_SWITCH | +| 4 | 테이블 로드 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 5 | [CREATE] ts 초기화 + 등록 다이얼로그 열기 | CREATE | ✅ | 1516ms | CREATE_OPEN | +| 6 | [CREATE] 폼 입력 + 등록 (일정명/유형/날짜/메모) | CREATE | ✅ | 7209ms | CREATE_FORM | +| 7 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2525ms | No toast/notification found | +| 8 | [CREATE] API POST 검증 (Server Action) | CREATE | ✅ | 1ms | pass: ServerAction POST ×3 status=200 | +| 9 | [CREATE] 모달 닫힘 확인 + 목록 새로고침 | CREATE | ✅ | 1003ms | MODAL_CHECK | +| 10 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1012ms | VERIFY_LIST / pass: E2E 데이터 목록 확인 / rows:19 | +| 11 | [UPDATE] E2E 일정 행 클릭 → 수정 다이얼로그 | UPDATE | ✅ | 2013ms | EDIT_OPEN | +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | ❌ | 1005ms | 다이얼로그 미열림 | +| 13 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2546ms | No toast/notification found | +| 14 | [UPDATE] API 수정 검증 (Server Action) | UPDATE | ✅ | 1ms | pass: ServerAction calls=4 total=5 | +| 15 | [UPDATE] 모달 닫힘 확인 | UPDATE | ✅ | 501ms | MODAL_CLOSE | +| 16 | [DELETE] E2E 수정일정 행 클릭 → 삭제 | DELETE | ✅ | 4520ms | DELETE_FLOW / alertdialog 없이 직접 삭제 | +| 17 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2546ms | No toast/notification found | +| 18 | [DELETE] API 삭제 검증 (Server Action) | DELETE | ✅ | 0ms | pass: ServerAction calls=7 total=8 | +| 19 | [DELETE] 목록에서 삭제 확인 | DELETE | ✅ | 2001ms | VERIFY_DELETED / pass: E2E data removed | +| 20 | [SUMMARY] API 호출 통계 | - | ✅ | 0ms | API total=8 calendar=7 POST=7 success=7 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 8 | 8 | 0 | 83ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_20-18-14.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 633 | +| 테이블 행 | 18 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-24-04.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-24-04.md new file mode 100644 index 0000000..eb4ecb5 --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-24-04.md @@ -0,0 +1,63 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_20-24-04 | **결과**: FAIL +**소요 시간**: 43.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 20 | 16 | 1 | 3 | 80% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | 다이얼로그 미열림 | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 509ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 3 | 목록 탭 전환 (PointerEvent) | - | ✅ | 2007ms | TAB_SWITCH | +| 4 | 테이블 로드 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 5 | [CREATE] ts 초기화 + 등록 다이얼로그 열기 | CREATE | ✅ | 1507ms | CREATE_OPEN | +| 6 | [CREATE] 폼 입력 + 등록 (일정명/유형/날짜/메모) | CREATE | ✅ | 7175ms | CREATE_FORM | +| 7 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2533ms | No toast/notification found | +| 8 | [CREATE] API POST 검증 (Server Action) | CREATE | ✅ | 1ms | pass: ServerAction POST ×3 status=200 | +| 9 | [CREATE] 모달 닫힘 확인 + 목록 새로고침 | CREATE | ✅ | 1016ms | MODAL_CHECK | +| 10 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1003ms | VERIFY_LIST / pass: E2E 데이터 목록 확인 / rows:19 | +| 11 | [UPDATE] E2E 일정 행 클릭 → 수정 다이얼로그 | UPDATE | ✅ | 3015ms | EDIT_OPEN | +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | ❌ | 1019ms | 다이얼로그 미열림 | +| 13 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2535ms | No toast/notification found | +| 14 | [UPDATE] API 수정 검증 (Server Action) | UPDATE | ✅ | 0ms | pass: ServerAction calls=4 total=5 | +| 15 | [UPDATE] 모달 닫힘 확인 | UPDATE | ✅ | 513ms | MODAL_CLOSE | +| 16 | [DELETE] E2E 수정일정 행 클릭 → 삭제 | DELETE | ✅ | 4531ms | DELETE_FLOW / alertdialog 없이 직접 삭제 | +| 17 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2521ms | No toast/notification found | +| 18 | [DELETE] API 삭제 검증 (Server Action) | DELETE | ✅ | 0ms | pass: ServerAction calls=7 total=8 | +| 19 | [DELETE] 목록에서 삭제 확인 | DELETE | ✅ | 2013ms | VERIFY_DELETED / pass: E2E data removed | +| 20 | [SUMMARY] API 호출 통계 | - | ✅ | 1ms | API total=8 calendar=7 POST=7 success=7 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 8 | 8 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_20-24-04.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 633 | +| 테이블 행 | 18 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-29-13.md b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-29-13.md new file mode 100644 index 0000000..d8414b2 --- /dev/null +++ b/e2e/results/hotfix/Fail-settings-calendar-crud_2026-03-03_20-29-13.md @@ -0,0 +1,63 @@ +# ❌ E2E 테스트 실패: 달력 일정 CRUD 테스트 + +**테스트 ID**: settings-calendar-crud | **실행**: 2026-03-03_20-29-13 | **결과**: FAIL +**소요 시간**: 55.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 20 | 16 | 1 | 3 | 80% | + +## 실패 스텝 +| # | 스텝 | Phase | 에러 | +|---|------|-------|------| +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | 다이얼로그 미열림 (재시도 포함) | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 설정 > 달력관리 | - | ✅ | 510ms | Menu navigation: 설정 > 달력관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 목록 탭 전환 (PointerEvent) | - | ✅ | 2014ms | TAB_SWITCH | +| 4 | 테이블 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | [CREATE] ts 초기화 + 등록 다이얼로그 열기 | CREATE | ✅ | 1502ms | CREATE_OPEN | +| 6 | [CREATE] 폼 입력 + 등록 (일정명/유형/날짜/메모) | CREATE | ✅ | 7216ms | CREATE_FORM | +| 7 | [CREATE] 등록 토스트 확인 | CREATE | ⚠️ | 2537ms | No toast/notification found | +| 8 | [CREATE] API POST 검증 (Server Action) | CREATE | ✅ | 2ms | pass: ServerAction POST ×3 status=200 | +| 9 | [CREATE] 모달 닫힘 확인 + 목록 새로고침 | CREATE | ✅ | 1010ms | MODAL_CHECK | +| 10 | [CREATE] 목록에서 등록 결과 확인 | CREATE | ✅ | 1002ms | VERIFY_LIST / pass: E2E 데이터 목록 확인 / rows:19 | +| 11 | [UPDATE] E2E 일정 행 클릭 → 수정 다이얼로그 | UPDATE | ✅ | 3527ms | EDIT_OPEN | +| 12 | [UPDATE] 일정명 수정 + 수정 버튼 클릭 | UPDATE | ❌ | 13048ms | 다이얼로그 미열림 (재시도 포함) | +| 13 | [UPDATE] 수정 토스트 확인 | UPDATE | ⚠️ | 2539ms | No toast/notification found | +| 14 | [UPDATE] API 수정 검증 (Server Action) | UPDATE | ✅ | 0ms | pass: ServerAction calls=4 total=5 | +| 15 | [UPDATE] 모달 닫힘 확인 | UPDATE | ✅ | 518ms | MODAL_CLOSE | +| 16 | [DELETE] E2E 수정일정 행 클릭 → 삭제 | DELETE | ✅ | 4515ms | DELETE_FLOW / alertdialog 없이 직접 삭제 | +| 17 | [DELETE] 삭제 토스트 확인 | DELETE | ⚠️ | 2531ms | No toast/notification found | +| 18 | [DELETE] API 삭제 검증 (Server Action) | DELETE | ✅ | 0ms | pass: ServerAction calls=7 total=8 | +| 19 | [DELETE] 목록에서 삭제 확인 | DELETE | ✅ | 2003ms | VERIFY_DELETED / pass: E2E data removed | +| 20 | [SUMMARY] API 호출 통계 | - | ✅ | 1ms | API total=8 calendar=7 POST=7 success=7 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 8 | 8 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/settings/calendar-management | + +## 자동 진단 +| 항목 | 내용 | +|------|------| +| 근본 원인 | **unknown** | +| 스크린샷 | diag_settings-calendar-crud_2026-03-03_20-29-13.png | + +### 페이지 상태 +| 항목 | 값 | +|------|----| +| DOM 노드 | 633 | +| 테이블 행 | 18 | +| API 호출 수 | 0 | +| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/downloads/prod-work-result_작업실적_20260304_221308.xlsx b/e2e/results/hotfix/downloads/prod-work-result_작업실적_20260304_221308.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..02eddcb89d92c0ce565317134a7736e969b672fb GIT binary patch literal 17574 zcmeHP>5n8wm2ZO=t&9+BEl8`CkWwW;tWbAW^)=nK-HrO3t9zz3-5wjz3ZgQjs&YCn zGPC;Nkj7(J4K~Nx*sLviyhbwe0^Vh0bIga?zhS>E;tN9Zftc=*zpM~QeBk#Y@`|ji z>aLy^2=I(*GBWaA@#4J~FRocX|L*%gFqHgx>Ao-D`tiGlhUoW?sNA*n&jj2K^&KzR zYIxq($gX3LP|eIIP|~(}5L%u)Td9pyD;jqV&$QguY~`WNmEoz17Dmi9neDlJwz9{= z$|vUD_rT00ZnFqTVcYUU4OHB4w$hFwzpm?{(dG^dM?9aq_|o(Ohedb|TDs4SE!N`t zXtg@2LxPM(Wlo`~oi%4G!CA9b(Kh#da6X*2*KAq_U-FEO!`-Nag=l}+<~#yX7PNRY zTOpN*s!$h?8tJB@mkTp`lEOq#63+w?ue$iRuMA@+DMJ|T+33+!8}hxM3dT>AJ@v&J zkC@3KmPz5nHHjR$Vr+Bkim_MUe|_s09~v5>-``7PFRJqRR?g~zmbC9WJBk&W0o#H1 zIJPuEhgoh#bD0AZz9% z&1~4N<(l5kCf|iU+boRmVYX5gf5?LM6v>Wy;O6jF#Ge>1MliQV1<#<>NSW4F#-~p$ zrSt`W9d*MkFE1}H*HU@{fEfl_DrL#j9ABBLEhIE^K(g3Pd$BrE9arIV^vAkno?cj3 zn3#@bkwgWMERJ`5gqg^dR5N+RdGX>Z@Y`TDgVy?*Vd zuRr$K>(_oLX(@pSk_8Y(c!P6z+^8st*!8a|3huQ_cqh0bGv`r{Rm7F(%!7w)4%u+B|8?;ME zFGpCP2J){S=1iL4UN=i80~xaN8Gf)|u3;5_llX?U~a zw#u0Yojlwn#D$~-R*x#VpvwwdFX!ERV?I}dv{+=7WRZQVn%(e0#bp6Vg= zj(%Wn&+fi#Q6`zijl%=MLsm->DKilI(g{k$I?X-BemC~)CgUQ?Afzji+OgbzVcWJ4 zwt1kwh9P>1b=-9hujsb^cOvvV5xVjhAEA5s^2x{LEEFS3 zQ$iwhZIO99JrnPyW!oDxCtnRk?j2$PGFMPZcw$+FrxP*1jUst67$|V9fC(He@S=yU zsJ+oyBuqcR&i6%$3D`*LLHe~O^7CfqQWh0GO1Y1%c1hLX{b!KiOfbrJ_IdK zVrh$5BN<~h$0AlT2Tr<$w3?JpxQpUe%Z9X>$z>NQ)j4g}MBgPQ)YU#}p0ts{w3%uR zN;_N#VHUmZ=ZH#92qcOXomBKD+s*ry?P@!-mFbDmiHc@0f40)ZOczDRN2i693o^Tf zMNuOPq}3kki^55>7EhO3RSk<5Jsd`HV?PL^B^I`2ABsRW_&d$}4?&ND63B69lgN?Siqc!YKaEYP&p;Ky)X@yv@ z5DrZ*SY0D+i%)87jU!EdO-sPZdS?4=7Dr23ok=`Sf(uhkWe{&U@zAzX*+t_9Zwh(* zNi`*J#(!l^q2T~42xBJofPux`fNA6@vlTCh+8&~i-?ogE0OP)h9k3Rx(BdZ*zN- zV&Ejj;EL9Usf%b5hXDasv_JJd_Mk?Ka+JKkDUmE4I;9W%u@e{R%xF|0mmvF1^q-0- zw52945?`PvV`RP|^dZZV#uKkl2EXa)nAI^wILZK=8*636>T2=mL?Rq|vAe~nO!FBZ z>p&X)gYnM_44VrxrU7-+yM)-PVf#VqPlHttQ&fWmQGk@C2J#+RDUFFpN!7;5DQPVk ztWP)#O8FL)O_Cj@zXw!ynnbDW6kj|^Wycy;bS>+8sv138bWv0_lX-~f7_rfn-;44Z zSJ2T*SoQDNa(629@h1GhUk`+JH9T`KF500SaHZAJ9EKom_Y!YvmbshEKT=Id7m_<9 zNs26>35^UbMI0-eG^mI%JfX_bGDRLe967}hoDs59WU-)DMgaR`ap0z@9pGh-u*0pKm>PO%@zSKHt3lud)z^^7*TmpNesWH^gGh&5%A7)d$L;KNyC&C(m}}@BnR=p zssqJ?Q~>fKs+gO>D1=nsUBL?tZd4`}&Q@F;ZV^q8aECx++}f*Q+9>!6!a8AqZ^H{r z9Hz;4gshsIv3Zls7Fk`Jo{{I{--Z`Oo`ZsEv6kmD8$~_AhzlTV@Ho4Aq^Z!}ZRR={ z<1Z|-S+j|!}PJ?3una=&heJi+vPp&aaQ&OSg zlMfdN8Cz2+;YP=@k!F=N12oOuOfh1Jk66RzA|Xw=Kq;mi%r?`Hvz4s8#!ai^Os7!m z*0v{ywAo5lmQdrO@3Wv#2tr?b=I5)A|LxEa{r*7)q0)0k$B#!Txf2UV$R~~$jf$tZ zOl*g{be>ELcoW+!wfdU$TZ*38GTT9aiJ(YjEjf}#FInHF-^pG)@+|zT!Q082G>3_F zLff%SN>FPPBU59e)iH8O&FF;isE6Y()J-YoXpD*HfS5RQC3xaFAm(_CiRXZrXp7*9 z=YW_9^a2yl0WnX-n0O9|iDQC-C!Pah!r=rao&#dm;L!q=3WMUNW`x3^xQQWQ92*!n zF{Rp(ZAq67AY5Vz=j1Skcsn%JqG8^k!aUl5IEyWL)NIe~f9LtTkKfvV_4?gsZ_Vi2 z6!Bxg1r_k%g(naG{VNAIZmUp>rBE+lJ$T~zGNMZ=_?_2&eDLBkDn*ZBIcW&KOxvU-zf)O#_O?RLB`rT`< z?0@sQl#uLQc_djnz170u4sI?7ffryr%)e3+h>%6_wLg%8IU zT`2z-i4&roc*Zsu52sJObnxP%*r}(P2~9r8LFyI?;^GO-l@sLj>P$iD=dL{XyH#AX zq2GHEDdjzzKa;yP7=+~VMs10Gxzv%r(~(^EK~8*B zfeydy12^Ta$<6*EVZEZCM6igHlSq|0(+}=vC6=7X()Y^C?f6}Tz^Y?teICOY?7zW6E<1Re;XJ6=t|c(}B2a7}6RSCjC^8rzM~mvRQWW#B z`LZ=WM_F-HM?nRoN+}3Fs3LA!5iVq1Y_79__FPiHSYnuCCb5u#^4vt6d{pa_QZyX= z3LNyT%L}3H|DO8dgP+1!Lca&|Rz`k)ZzGD~*NI5RS`ICB1E+8Xj73S((H(uHxtT^v z((eSexP)jLI*%`1>9vuXj#WmwzgRa7tOz^VJ;pqO_>zNktSEmiF%N1Q@?#3U8zOUw z+qJW^GqN)##6U(@(;rz|6}uX2*mCKjr9tb^>J7L5{MnVOAH+%`{pg00_#;4I!QP0&a1&(Nr8Q)L(DlA@ z`rCcwBKm4D9hQL?RP!SGEiE-u>~|5ijDhd0^pW zDvfY5Vb_cK&p_M?UZYI&W5*>YJpz9@yyvfhpPV3+-wFDM$RV~v^S8k7MFc_Y5Qf?2 z_+XvfU+rSYy&vZ^WlfTa!MGOWA8#0VlBe7=>k!x1X79IpWgpTM3GMM#(hTQF8F~?(TIx#if1%30>9S;fy^k2sKuSt z4E52E2-MWk^8cShkxFrWGovy;BBCu(z$iYrKyQBl DAHuO{ literal 0 HcmV?d00001 diff --git a/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_15-24-01.md b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_15-24-01.md new file mode 100644 index 0000000..cd85187 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_15-24-01.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 거래처관리 + +**테스트 ID**: a11y-acc-client | **실행**: 2026-03-03_15-24-01 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1021ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2227ms | 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/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_21-21-04.md b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_21-21-04.md new file mode 100644 index 0000000..ccd5666 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_21-21-04.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 거래처관리 + +**테스트 ID**: a11y-acc-client | **실행**: 2026-03-03_21-21-04 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1015ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2280ms | 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/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_22-21-16.md b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_22-21-16.md new file mode 100644 index 0000000..f5c5247 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-03_22-21-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 거래처관리 + +**테스트 ID**: a11y-acc-client | **실행**: 2026-03-03_22-21-16 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1017ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_10-06-14.md b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_10-06-14.md new file mode 100644 index 0000000..62dba31 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_10-06-14.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 거래처관리 + +**테스트 ID**: a11y-acc-client | **실행**: 2026-03-04_10-06-14 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1013ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2266ms | 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/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_22-39-15.md b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_22-39-15.md new file mode 100644 index 0000000..6ba80ec --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-client_2026-03-04_22-39-15.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 거래처관리 + +**테스트 ID**: a11y-acc-client | **실행**: 2026-03-04_22-39-15 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | 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 | ✅ | 2207ms | 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/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_15-24-13.md b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_15-24-13.md new file mode 100644 index 0000000..112d0ca --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_15-24-13.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 입금관리 + +**테스트 ID**: a11y-acc-deposit | **실행**: 2026-03-03_15-24-13 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1020ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2230ms | 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/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_21-21-16.md b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_21-21-16.md new file mode 100644 index 0000000..00a0792 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_21-21-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 입금관리 + +**테스트 ID**: a11y-acc-deposit | **실행**: 2026-03-03_21-21-16 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1022ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2260ms | 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/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_22-21-29.md b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_22-21-29.md new file mode 100644 index 0000000..075f9fa --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-03_22-21-29.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 입금관리 + +**테스트 ID**: a11y-acc-deposit | **실행**: 2026-03-03_22-21-29 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1018ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2243ms | 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/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_10-06-27.md b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_10-06-27.md new file mode 100644 index 0000000..f907a71 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_10-06-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 입금관리 + +**테스트 ID**: a11y-acc-deposit | **실행**: 2026-03-04_10-06-27 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1011ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2223ms | 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/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_22-39-28.md b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_22-39-28.md new file mode 100644 index 0000000..2a3b5af --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-deposit_2026-03-04_22-39-28.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 입금관리 + +**테스트 ID**: a11y-acc-deposit | **실행**: 2026-03-04_22-39-28 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1514ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2221ms | 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/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_15-24-25.md b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_15-24-25.md new file mode 100644 index 0000000..1d67702 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_15-24-25.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매입관리 + +**테스트 ID**: a11y-acc-purchase | **실행**: 2026-03-03_15-24-25 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 2ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2257ms | 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/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_21-21-27.md b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_21-21-27.md new file mode 100644 index 0000000..0a5ffdc --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_21-21-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매입관리 + +**테스트 ID**: a11y-acc-purchase | **실행**: 2026-03-03_21-21-27 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | 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 | ✅ | 2245ms | 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/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_22-21-40.md b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_22-21-40.md new file mode 100644 index 0000000..2ef6e06 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-03_22-21-40.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매입관리 + +**테스트 ID**: a11y-acc-purchase | **실행**: 2026-03-03_22-21-40 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | 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 | ✅ | 2251ms | 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/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_10-06-39.md b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_10-06-39.md new file mode 100644 index 0000000..8f825e9 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_10-06-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매입관리 + +**테스트 ID**: a11y-acc-purchase | **실행**: 2026-03-04_10-06-39 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | 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 | ✅ | 2227ms | 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/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_22-39-39.md b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_22-39-39.md new file mode 100644 index 0000000..1203b43 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-purchase_2026-03-04_22-39-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매입관리 + +**테스트 ID**: a11y-acc-purchase | **실행**: 2026-03-04_22-39-39 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 3ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2247ms | 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/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_15-24-37.md b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_15-24-37.md new file mode 100644 index 0000000..e08c1ab --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_15-24-37.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매출관리 + +**테스트 ID**: a11y-acc-sales | **실행**: 2026-03-03_15-24-37 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1022ms | A11y: score=0 FAIL (C:0 S:63 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2199ms | 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/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_21-21-40.md b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_21-21-40.md new file mode 100644 index 0000000..ee631a3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_21-21-40.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매출관리 + +**테스트 ID**: a11y-acc-sales | **실행**: 2026-03-03_21-21-40 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1037ms | A11y: score=0 FAIL (C:0 S:63 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2280ms | 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/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_22-21-52.md b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_22-21-52.md new file mode 100644 index 0000000..66e0a60 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-03_22-21-52.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매출관리 + +**테스트 ID**: a11y-acc-sales | **실행**: 2026-03-03_22-21-52 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1030ms | A11y: score=0 FAIL (C:0 S:63 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2260ms | 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/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_10-06-51.md b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_10-06-51.md new file mode 100644 index 0000000..e1239e7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_10-06-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매출관리 + +**테스트 ID**: a11y-acc-sales | **실행**: 2026-03-04_10-06-51 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1019ms | A11y: score=0 FAIL (C:0 S:63 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_22-39-52.md b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_22-39-52.md new file mode 100644 index 0000000..fe6a3cc --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-acc-sales_2026-03-04_22-39-52.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 회계관리 > 매출관리 + +**테스트 ID**: a11y-acc-sales | **실행**: 2026-03-04_22-39-52 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1519ms | A11y: score=0 FAIL (C:0 S:63 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2215ms | 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/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_14-38-42.md b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_14-38-42.md new file mode 100644 index 0000000..097eafb --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_14-38-42.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-03_14-38-42 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 15 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1018ms | A11y: score=10 FAIL (C:0 S:18 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2245ms | 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/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_15-24-49.md b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_15-24-49.md new file mode 100644 index 0000000..48a01a7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_15-24-49.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-03_15-24-49 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 15 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1014ms | A11y: score=10 FAIL (C:0 S:18 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2231ms | 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/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_21-21-52.md b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_21-21-52.md new file mode 100644 index 0000000..54c3bf3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_21-21-52.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-03_21-21-52 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 15 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1022ms | A11y: score=10 FAIL (C:0 S:18 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2260ms | 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/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_22-22-05.md b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_22-22-05.md new file mode 100644 index 0000000..805e34a --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-03_22-22-05.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-03_22-22-05 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 15 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1017ms | A11y: score=10 FAIL (C:0 S:18 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2281ms | 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/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_10-07-03.md b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_10-07-03.md new file mode 100644 index 0000000..2c0f43c --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_10-07-03.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-04_10-07-03 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 15 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1016ms | A11y: score=10 FAIL (C:0 S:18 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2223ms | 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/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_22-40-05.md b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_22-40-05.md new file mode 100644 index 0000000..e0caf90 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-box_2026-03-04_22-40-05.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 결재함 + +**테스트 ID**: a11y-approval-box | **실행**: 2026-03-04_22-40-05 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 15 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1518ms | A11y: score=10 FAIL (C:0 S:18 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2246ms | 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/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_15-25-02.md b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_15-25-02.md new file mode 100644 index 0000000..bed6fcf --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_15-25-02.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 기안함 + +**테스트 ID**: a11y-approval-draft | **실행**: 2026-03-03_15-25-02 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1020ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2282ms | 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/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_21-22-05.md b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_21-22-05.md new file mode 100644 index 0000000..c420b50 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_21-22-05.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 기안함 + +**테스트 ID**: a11y-approval-draft | **실행**: 2026-03-03_21-22-05 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1017ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2261ms | 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/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_22-22-17.md b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_22-22-17.md new file mode 100644 index 0000000..bb8ea4f --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-03_22-22-17.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 기안함 + +**테스트 ID**: a11y-approval-draft | **실행**: 2026-03-03_22-22-17 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1034ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2234ms | 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/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_10-07-15.md b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_10-07-15.md new file mode 100644 index 0000000..97cec40 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_10-07-15.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 기안함 + +**테스트 ID**: a11y-approval-draft | **실행**: 2026-03-04_10-07-15 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1016ms | 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/approval/draft | diff --git a/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_22-40-17.md b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_22-40-17.md new file mode 100644 index 0000000..abd95fc --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-approval-draft_2026-03-04_22-40-17.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 결재관리 > 기안함 + +**테스트 ID**: a11y-approval-draft | **실행**: 2026-03-04_22-40-17 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1532ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2216ms | 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/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_15-25-14.md b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_15-25-14.md new file mode 100644 index 0000000..bbae9fb --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_15-25-14.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 게시판 > 자유게시판 + +**테스트 ID**: a11y-board-free | **실행**: 2026-03-03_15-25-14 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1020ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2213ms | 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/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_21-22-17.md b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_21-22-17.md new file mode 100644 index 0000000..80734da --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_21-22-17.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 게시판 > 자유게시판 + +**테스트 ID**: a11y-board-free | **실행**: 2026-03-03_21-22-17 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1018ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2251ms | 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/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_22-22-30.md b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_22-22-30.md new file mode 100644 index 0000000..a2f545d --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-03_22-22-30.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 게시판 > 자유게시판 + +**테스트 ID**: a11y-board-free | **실행**: 2026-03-03_22-22-30 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1017ms | 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/boards/free | diff --git a/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_10-07-28.md b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_10-07-28.md new file mode 100644 index 0000000..b6a454e --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_10-07-28.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 게시판 > 자유게시판 + +**테스트 ID**: a11y-board-free | **실행**: 2026-03-04_10-07-28 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1022ms | A11y: score=35 FAIL (C:0 S:13 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/boards/free | diff --git a/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_22-40-30.md b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_22-40-30.md new file mode 100644 index 0000000..dcffbb7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-board-free_2026-03-04_22-40-30.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 게시판 > 자유게시판 + +**테스트 ID**: a11y-board-free | **실행**: 2026-03-04_22-40-30 | **결과**: PASS +**소요 시간**: 13.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1519ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2202ms | 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/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_14-57-53.md b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_14-57-53.md new file mode 100644 index 0000000..b374fb3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_14-57-53.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-03_14-57-53 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1032ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2268ms | 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/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_15-25-26.md b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_15-25-26.md new file mode 100644 index 0000000..24fc0c7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_15-25-26.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-03_15-25-26 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1020ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2228ms | 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/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_21-22-29.md b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_21-22-29.md new file mode 100644 index 0000000..0f113ca --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_21-22-29.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-03_21-22-29 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1014ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2287ms | 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/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_22-22-42.md b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_22-22-42.md new file mode 100644 index 0000000..10cba5b --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-03_22-22-42.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-03_22-22-42 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1012ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2235ms | 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/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_10-07-40.md b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_10-07-40.md new file mode 100644 index 0000000..3c7d38e --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_10-07-40.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-04_10-07-40 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1019ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2231ms | 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/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_22-40-43.md b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_22-40-43.md new file mode 100644 index 0000000..cc517e8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-attendance_2026-03-04_22-40-43.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 근태관리 + +**테스트 ID**: a11y-hr-attendance | **실행**: 2026-03-04_22-40-43 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1519ms | A11y: score=0 FAIL (C:0 S:23 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/attendance-management | diff --git a/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_15-25-39.md b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_15-25-39.md new file mode 100644 index 0000000..41995ee --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_15-25-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 부서관리 + +**테스트 ID**: a11y-hr-department | **실행**: 2026-03-03_15-25-39 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=부서관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1021ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2243ms | 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/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_21-22-42.md b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_21-22-42.md new file mode 100644 index 0000000..1338acf --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_21-22-42.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 부서관리 + +**테스트 ID**: a11y-hr-department | **실행**: 2026-03-03_21-22-42 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=부서관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1019ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_22-22-54.md b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_22-22-54.md new file mode 100644 index 0000000..6daf42a --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-03_22-22-54.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 부서관리 + +**테스트 ID**: a11y-hr-department | **실행**: 2026-03-03_22-22-54 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 3ms | Found: text=부서관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1026ms | 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/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_10-07-52.md b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_10-07-52.md new file mode 100644 index 0000000..abee7ca --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_10-07-52.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 부서관리 + +**테스트 ID**: a11y-hr-department | **실행**: 2026-03-04_10-07-52 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 2ms | Found: text=부서관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1011ms | 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/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_22-40-56.md b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_22-40-56.md new file mode 100644 index 0000000..e18b405 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-department_2026-03-04_22-40-56.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 부서관리 + +**테스트 ID**: a11y-hr-department | **실행**: 2026-03-04_22-40-56 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 3ms | Found: text=부서관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1532ms | A11y: score=35 FAIL (C:0 S:13 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2221ms | 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/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_15-25-51.md b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_15-25-51.md new file mode 100644 index 0000000..61f37e8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_15-25-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 사원관리 + +**테스트 ID**: a11y-hr-employee | **실행**: 2026-03-03_15-25-51 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1018ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2220ms | 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/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_21-22-54.md b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_21-22-54.md new file mode 100644 index 0000000..929370c --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_21-22-54.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 사원관리 + +**테스트 ID**: a11y-hr-employee | **실행**: 2026-03-03_21-22-54 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1007ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2243ms | 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/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_22-23-07.md b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_22-23-07.md new file mode 100644 index 0000000..01b4104 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-03_22-23-07.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 사원관리 + +**테스트 ID**: a11y-hr-employee | **실행**: 2026-03-03_22-23-07 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1014ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2279ms | 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/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_10-08-05.md b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_10-08-05.md new file mode 100644 index 0000000..deaa0c0 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_10-08-05.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 사원관리 + +**테스트 ID**: a11y-hr-employee | **실행**: 2026-03-04_10-08-05 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1012ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2230ms | 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/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_22-41-09.md b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_22-41-09.md new file mode 100644 index 0000000..0135c26 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-employee_2026-03-04_22-41-09.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 사원관리 + +**테스트 ID**: a11y-hr-employee | **실행**: 2026-03-04_22-41-09 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | 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 | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-05-16.md b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-05-16.md new file mode 100644 index 0000000..38c02c8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-05-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-03_15-05-16 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3012ms | 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 | ✅ | 2213ms | 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/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-26-03.md b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-26-03.md new file mode 100644 index 0000000..ea49e12 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_15-26-03.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-03_15-26-03 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | 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 | ✅ | 2211ms | 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/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_21-23-05.md b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_21-23-05.md new file mode 100644 index 0000000..eda1907 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_21-23-05.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-03_21-23-05 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 2 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 2ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2246ms | 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/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_22-23-18.md b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_22-23-18.md new file mode 100644 index 0000000..7da1d16 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-03_22-23-18.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-03_22-23-18 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 2 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 2ms | A11y: score=75 PASS (C:0 S:5 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/salary-management | diff --git a/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_10-08-16.md b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_10-08-16.md new file mode 100644 index 0000000..e3b9725 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_10-08-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-04_10-08-16 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | 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 | ✅ | 2227ms | 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/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_22-41-20.md b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_22-41-20.md new file mode 100644 index 0000000..13f6fd4 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-hr-salary_2026-03-04_22-41-20.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 인사관리 > 급여관리 + +**테스트 ID**: a11y-hr-salary | **실행**: 2026-03-04_22-41-20 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 2 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 2ms | A11y: score=75 PASS (C:0 S:5 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2234ms | 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/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_15-26-15.md b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_15-26-15.md new file mode 100644 index 0000000..a4daca0 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_15-26-15.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 입고관리 + +**테스트 ID**: a11y-material-receiving | **실행**: 2026-03-03_15-26-15 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 7 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1021ms | A11y: score=50 FAIL (C:0 S:10 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/material/receiving-management | diff --git a/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_21-23-18.md b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_21-23-18.md new file mode 100644 index 0000000..17bd3cb --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_21-23-18.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 입고관리 + +**테스트 ID**: a11y-material-receiving | **실행**: 2026-03-03_21-23-18 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 7 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1018ms | A11y: score=50 FAIL (C:0 S:10 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2213ms | 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/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_22-23-30.md b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_22-23-30.md new file mode 100644 index 0000000..0c60068 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-03_22-23-30.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 입고관리 + +**테스트 ID**: a11y-material-receiving | **실행**: 2026-03-03_22-23-30 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 7 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1016ms | A11y: score=50 FAIL (C:0 S:10 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_10-08-28.md b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_10-08-28.md new file mode 100644 index 0000000..e346d23 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_10-08-28.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 입고관리 + +**테스트 ID**: a11y-material-receiving | **실행**: 2026-03-04_10-08-28 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 7 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1008ms | A11y: score=50 FAIL (C:0 S:10 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2209ms | 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/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_22-41-33.md b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_22-41-33.md new file mode 100644 index 0000000..fdcd9fc --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-receiving_2026-03-04_22-41-33.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 입고관리 + +**테스트 ID**: a11y-material-receiving | **실행**: 2026-03-04_22-41-33 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 7 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1519ms | A11y: score=50 FAIL (C:0 S:10 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2215ms | 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/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_15-26-27.md b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_15-26-27.md new file mode 100644 index 0000000..2e3306c --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_15-26-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-03_15-26-27 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1033ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2216ms | 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/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_21-23-30.md b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_21-23-30.md new file mode 100644 index 0000000..ccb0043 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_21-23-30.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-03_21-23-30 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1016ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2228ms | 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/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_22-23-42.md b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_22-23-42.md new file mode 100644 index 0000000..771689b --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-03_22-23-42.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-03_22-23-42 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 2ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2229ms | 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/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_10-08-40.md b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_10-08-40.md new file mode 100644 index 0000000..d5acb52 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_10-08-40.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-04_10-08-40 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | 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 | ✅ | 2235ms | 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/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-29-51.md b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-29-51.md new file mode 100644 index 0000000..8667e45 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-29-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-04_22-29-51 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 3ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2211ms | 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/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-41-44.md b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-41-44.md new file mode 100644 index 0000000..982ffa1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-material-stock_2026-03-04_22-41-44.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 자재관리 > 재고현황 + +**테스트 ID**: a11y-material-stock | **실행**: 2026-03-04_22-41-44 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | 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 | ✅ | 2229ms | 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/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_15-26-39.md b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_15-26-39.md new file mode 100644 index 0000000..7e30ff3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_15-26-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 품목관리 + +**테스트 ID**: a11y-prod-item | **실행**: 2026-03-03_15-26-39 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=품목기준관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=88 PASS (C:0 S:2 M:1) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2231ms | 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/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_21-23-41.md b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_21-23-41.md new file mode 100644 index 0000000..059e9a3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_21-23-41.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 품목관리 + +**테스트 ID**: a11y-prod-item | **실행**: 2026-03-03_21-23-41 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=품목기준관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=88 PASS (C:0 S:2 M:1) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2272ms | 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/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_22-23-53.md b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_22-23-53.md new file mode 100644 index 0000000..00db66e --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-03_22-23-53.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 품목관리 + +**테스트 ID**: a11y-prod-item | **실행**: 2026-03-03_22-23-53 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=품목기준관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=88 PASS (C:0 S:2 M:1) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2280ms | 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/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_10-08-51.md b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_10-08-51.md new file mode 100644 index 0000000..64a01e6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_10-08-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 품목관리 + +**테스트 ID**: a11y-prod-item | **실행**: 2026-03-04_10-08-51 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=품목기준관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=88 PASS (C:0 S:2 M:1) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2221ms | 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/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_22-41-56.md b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_22-41-56.md new file mode 100644 index 0000000..45a14be --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-item_2026-03-04_22-41-56.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 품목관리 + +**테스트 ID**: a11y-prod-item | **실행**: 2026-03-04_22-41-56 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 페이지 콘텐츠 로드 확인 | - | ✅ | 1ms | Found: text=품목기준관리 | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 1ms | A11y: score=88 PASS (C:0 S:2 M:1) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_15-26-51.md b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_15-26-51.md new file mode 100644 index 0000000..208b6aa --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_15-26-51.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 작업지시 + +**테스트 ID**: a11y-prod-work-order | **실행**: 2026-03-03_15-26-51 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1020ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2259ms | 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/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_21-23-54.md b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_21-23-54.md new file mode 100644 index 0000000..ed9d137 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_21-23-54.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 작업지시 + +**테스트 ID**: a11y-prod-work-order | **실행**: 2026-03-03_21-23-54 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1016ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2261ms | 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/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_22-24-05.md b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_22-24-05.md new file mode 100644 index 0000000..96d083b --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-03_22-24-05.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 작업지시 + +**테스트 ID**: a11y-prod-work-order | **실행**: 2026-03-03_22-24-05 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1015ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2268ms | 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/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_10-09-03.md b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_10-09-03.md new file mode 100644 index 0000000..af9a1a0 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_10-09-03.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 작업지시 + +**테스트 ID**: a11y-prod-work-order | **실행**: 2026-03-04_10-09-03 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1019ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2231ms | 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/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_22-42-08.md b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_22-42-08.md new file mode 100644 index 0000000..e2df509 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-prod-work-order_2026-03-04_22-42-08.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 생산관리 > 작업지시 + +**테스트 ID**: a11y-prod-work-order | **실행**: 2026-03-04_22-42-08 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1517ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2205ms | 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/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_15-27-03.md b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_15-27-03.md new file mode 100644 index 0000000..6a1dc43 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_15-27-03.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 거래처관리 + +**테스트 ID**: a11y-sales-client | **실행**: 2026-03-03_15-27-03 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1019ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2216ms | 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/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_21-24-06.md b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_21-24-06.md new file mode 100644 index 0000000..868c95f --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_21-24-06.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 거래처관리 + +**테스트 ID**: a11y-sales-client | **실행**: 2026-03-03_21-24-06 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1023ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2242ms | 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/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_22-24-18.md b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_22-24-18.md new file mode 100644 index 0000000..f57cc1c --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-03_22-24-18.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 거래처관리 + +**테스트 ID**: a11y-sales-client | **실행**: 2026-03-03_22-24-18 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1035ms | A11y: score=0 FAIL (C:0 S:23 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/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_10-09-16.md b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_10-09-16.md new file mode 100644 index 0000000..4781169 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_10-09-16.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 거래처관리 + +**테스트 ID**: a11y-sales-client | **실행**: 2026-03-04_10-09-16 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1022ms | A11y: score=0 FAIL (C:0 S:23 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/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_22-42-21.md b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_22-42-21.md new file mode 100644 index 0000000..f3e28e9 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-client_2026-03-04_22-42-21.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 거래처관리 + +**테스트 ID**: a11y-sales-client | **실행**: 2026-03-04_22-42-21 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1515ms | A11y: score=0 FAIL (C:0 S:23 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2221ms | 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/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_15-27-15.md b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_15-27-15.md new file mode 100644 index 0000000..292bd75 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_15-27-15.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 견적관리 + +**테스트 ID**: a11y-sales-estimate | **실행**: 2026-03-03_15-27-15 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | 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 | ✅ | 2214ms | 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/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_21-24-17.md b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_21-24-17.md new file mode 100644 index 0000000..deae5df --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_21-24-17.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 견적관리 + +**테스트 ID**: a11y-sales-estimate | **실행**: 2026-03-03_21-24-17 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | 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 | ✅ | 2199ms | 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/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_22-24-29.md b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_22-24-29.md new file mode 100644 index 0000000..9b7b702 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-03_22-24-29.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 견적관리 + +**테스트 ID**: a11y-sales-estimate | **실행**: 2026-03-03_22-24-29 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 0ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2221ms | 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/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_10-09-27.md b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_10-09-27.md new file mode 100644 index 0000000..57353f4 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_10-09-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 견적관리 + +**테스트 ID**: a11y-sales-estimate | **실행**: 2026-03-04_10-09-27 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ✅ | 2ms | A11y: score=85 PASS (C:0 S:3 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2197ms | 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/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_22-42-33.md b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_22-42-33.md new file mode 100644 index 0000000..db4c050 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-estimate_2026-03-04_22-42-33.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 견적관리 + +**테스트 ID**: a11y-sales-estimate | **실행**: 2026-03-04_22-42-33 | **결과**: PASS +**소요 시간**: 11.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 4 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | 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 | ✅ | 2182ms | 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/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_15-27-27.md b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_15-27-27.md new file mode 100644 index 0000000..e468703 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_15-27-27.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 수주관리 + +**테스트 ID**: a11y-sales-order | **실행**: 2026-03-03_15-27-27 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 12 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1021ms | A11y: score=25 FAIL (C:0 S:15 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/sales/order-management-sales | diff --git a/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_21-24-29.md b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_21-24-29.md new file mode 100644 index 0000000..cc69d72 --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_21-24-29.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 수주관리 + +**테스트 ID**: a11y-sales-order | **실행**: 2026-03-03_21-24-29 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 12 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1015ms | A11y: score=25 FAIL (C:0 S:15 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2216ms | 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/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_22-24-41.md b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_22-24-41.md new file mode 100644 index 0000000..93be92a --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-03_22-24-41.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 수주관리 + +**테스트 ID**: a11y-sales-order | **실행**: 2026-03-03_22-24-41 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 0ms | Table loaded: 12 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1020ms | A11y: score=25 FAIL (C:0 S:15 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2241ms | 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/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_10-09-39.md b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_10-09-39.md new file mode 100644 index 0000000..26e5b0b --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_10-09-39.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 수주관리 + +**테스트 ID**: a11y-sales-order | **실행**: 2026-03-04_10-09-39 | **결과**: PASS +**소요 시간**: 12.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 12 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1019ms | A11y: score=25 FAIL (C:0 S:15 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2245ms | 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/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_22-42-45.md b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_22-42-45.md new file mode 100644 index 0000000..867e89e --- /dev/null +++ b/e2e/results/hotfix/success/OK-a11y-sales-order_2026-03-04_22-42-45.md @@ -0,0 +1,28 @@ +# ✅ E2E 테스트 성공: 접근성 검사: 판매관리 > 수주관리 + +**테스트 ID**: a11y-sales-order | **실행**: 2026-03-04_22-42-45 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 4 | 3 | 0 | 1 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블/콘텐츠 로드 대기 | - | ✅ | 1ms | Table loaded: 12 rows | +| 3 | 접근성 감사 | A11Y_AUDIT | ⚠️ | 1513ms | A11y: score=25 FAIL (C:0 S:15 M:0) | +| 4 | 키보드 네비게이션 검사 | KBD_NAV | ✅ | 2236ms | 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/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_15-27-37.md b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_15-27-37.md new file mode 100644 index 0000000..3b817e0 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_15-27-37.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 악성채권추심관리 테스트 + +**테스트 ID**: accounting-bad-debt | **실행**: 2026-03-03_15-27-37 | **결과**: PASS +**소요 시간**: 10.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 22 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ✅ | 521ms | Menu navigation: 회계관리 > 악성채권추심관리 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/accounting/bad-debt-collection | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 50 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 16 "... is not valid JSON/raw:Stats: 16 | +| 5 | 악성채권 테이블 구조 확인 | - | ✅ | 1ms | Table: 9 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 | ✅ | 6ms | Element not present (ok): button:has-text('등록'), button:has-text('추가'), button:h | +| 9 | [CREATE] 거래처 선택 | CREATE | ✅ | 318ms | Clicked (existed): select[name*='vendor'], input[placeholder*='거래처'] | +| 10 | [CREATE] 채권금액 입력 | CREATE | ✅ | 3ms | Element not present (ok): input[name*='amount'], input[placeholder*='금액'] | +| 11 | [CREATE] 필수 검증 #2: 채권 저장 | CREATE | ✅ | 4ms | Element not present (ok): button:has-text('저장'), button:has-text('등록'), button:h | +| 12 | [CREATE] 저장 완료 토스트 확인 | CREATE | ✅ | 511ms | Toast visible: "" | +| 13 | [READ] 등록된 채권 검색 | READ | ✅ | 309ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 14 | [READ] 등록된 채권 확인 | READ | ⚠️ | 1021ms | Detail checks: 0/1 matched | +| 15 | [READ] 채권 상세 조회 | READ | ✅ | 2ms | Element not present (ok): table tbody tr:has-text('E2E_TEST_채권거래처') | +| 16 | 상세 정보 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 17 | [UPDATE] 상태 변경 | UPDATE | ✅ | 2ms | Element not present (ok): button:has-text('상태변경'), select[name*='status'] | +| 18 | [UPDATE] 추심 메모 추가 | UPDATE | ✅ | 2ms | 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 | ✅ | 510ms | Toast visible: "" | +| 21 | [DELETE] 채권 삭제 | DELETE | ✅ | 3ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 22 | [DELETE] 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1022ms | 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/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_21-24-40.md b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_21-24-40.md new file mode 100644 index 0000000..2c4e286 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_21-24-40.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 악성채권추심관리 테스트 + +**테스트 ID**: accounting-bad-debt | **실행**: 2026-03-03_21-24-40 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 22 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ✅ | 518ms | Menu navigation: 회계관리 > 악성채권추심관리 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/accounting/bad-debt-collection | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 50 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 4ms | json_fail:Unexpected token 'S', "Stats: 16 "... is not valid JSON/raw:Stats: 16 | +| 5 | 악성채권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 5 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 8 | [CREATE] 채권 등록 버튼 클릭 | CREATE | ✅ | 3ms | Element not present (ok): button:has-text('등록'), button:has-text('추가'), button:h | +| 9 | [CREATE] 거래처 선택 | CREATE | ✅ | 306ms | Clicked (existed): select[name*='vendor'], input[placeholder*='거래처'] | +| 10 | [CREATE] 채권금액 입력 | CREATE | ✅ | 3ms | Element not present (ok): input[name*='amount'], input[placeholder*='금액'] | +| 11 | [CREATE] 필수 검증 #2: 채권 저장 | CREATE | ✅ | 3ms | Element not present (ok): button:has-text('저장'), button:has-text('등록'), button:h | +| 12 | [CREATE] 저장 완료 토스트 확인 | CREATE | ✅ | 511ms | Toast visible: "" | +| 13 | [READ] 등록된 채권 검색 | READ | ✅ | 319ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 14 | [READ] 등록된 채권 확인 | READ | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 15 | [READ] 채권 상세 조회 | READ | ✅ | 2ms | 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 | ✅ | 1ms | 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 | ✅ | 511ms | Toast visible: "" | +| 21 | [DELETE] 채권 삭제 | DELETE | ✅ | 3ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 22 | [DELETE] 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1012ms | Detail checks: 0/1 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bad-debt-collection | diff --git a/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_22-24-52.md b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_22-24-52.md new file mode 100644 index 0000000..cc5fb7c --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-03_22-24-52.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 악성채권추심관리 테스트 + +**테스트 ID**: accounting-bad-debt | **실행**: 2026-03-03_22-24-52 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 22 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ✅ | 518ms | Menu navigation: 회계관리 > 악성채권추심관리 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/accounting/bad-debt-collection | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 50 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 16 "... is not valid JSON/raw:Stats: 16 | +| 5 | 악성채권 테이블 구조 확인 | - | ✅ | 1ms | Table: 9 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 | ✅ | 2ms | Element not present (ok): button:has-text('등록'), button:has-text('추가'), button:h | +| 9 | [CREATE] 거래처 선택 | CREATE | ✅ | 307ms | Clicked (existed): select[name*='vendor'], input[placeholder*='거래처'] | +| 10 | [CREATE] 채권금액 입력 | CREATE | ✅ | 2ms | Element not present (ok): input[name*='amount'], input[placeholder*='금액'] | +| 11 | [CREATE] 필수 검증 #2: 채권 저장 | CREATE | ✅ | 2ms | Element not present (ok): button:has-text('저장'), button:has-text('등록'), button:h | +| 12 | [CREATE] 저장 완료 토스트 확인 | CREATE | ✅ | 515ms | Toast visible: "" | +| 13 | [READ] 등록된 채권 검색 | READ | ✅ | 313ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 14 | [READ] 등록된 채권 확인 | READ | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 15 | [READ] 채권 상세 조회 | READ | ✅ | 1ms | 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 | ✅ | 515ms | Toast visible: "" | +| 21 | [DELETE] 채권 삭제 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 22 | [DELETE] 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1015ms | 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/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_10-09-50.md b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_10-09-50.md new file mode 100644 index 0000000..59e2f3e --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_10-09-50.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 악성채권추심관리 테스트 + +**테스트 ID**: accounting-bad-debt | **실행**: 2026-03-04_10-09-50 | **결과**: PASS +**소요 시간**: 10.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 22 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ✅ | 505ms | Menu navigation: 회계관리 > 악성채권추심관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bad-debt-collection | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 50 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 16 "... is not valid JSON/raw:Stats: 16 | +| 5 | 악성채권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 5 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 8 | [CREATE] 채권 등록 버튼 클릭 | CREATE | ✅ | 1ms | Element not present (ok): button:has-text('등록'), button:has-text('추가'), button:h | +| 9 | [CREATE] 거래처 선택 | CREATE | ✅ | 308ms | Clicked (existed): select[name*='vendor'], input[placeholder*='거래처'] | +| 10 | [CREATE] 채권금액 입력 | CREATE | ✅ | 2ms | Element not present (ok): input[name*='amount'], input[placeholder*='금액'] | +| 11 | [CREATE] 필수 검증 #2: 채권 저장 | CREATE | ✅ | 2ms | Element not present (ok): button:has-text('저장'), button:has-text('등록'), button:h | +| 12 | [CREATE] 저장 완료 토스트 확인 | CREATE | ✅ | 512ms | Toast visible: "" | +| 13 | [READ] 등록된 채권 검색 | READ | ✅ | 301ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 14 | [READ] 등록된 채권 확인 | READ | ⚠️ | 1019ms | Detail checks: 0/1 matched | +| 15 | [READ] 채권 상세 조회 | READ | ✅ | 2ms | Element not present (ok): table tbody tr:has-text('E2E_TEST_채권거래처') | +| 16 | 상세 정보 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 17 | [UPDATE] 상태 변경 | UPDATE | ✅ | 2ms | 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 | ✅ | 511ms | Toast visible: "" | +| 21 | [DELETE] 채권 삭제 | DELETE | ✅ | 3ms | 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 | ⚠️ | 1027ms | Detail checks: 0/1 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bad-debt-collection | diff --git a/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_22-42-57.md b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_22-42-57.md new file mode 100644 index 0000000..2fc9392 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bad-debt_2026-03-04_22-42-57.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 악성채권추심관리 테스트 + +**테스트 ID**: accounting-bad-debt | **실행**: 2026-03-04_22-42-57 | **결과**: PASS +**소요 시간**: 11.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 22 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 악성채권추심관리 | - | ✅ | 507ms | Menu navigation: 회계관리 > 악성채권추심관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bad-debt-collection | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 50 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 16 "... is not valid JSON/raw:Stats: 16 | +| 5 | 악성채권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 5 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 8 | [CREATE] 채권 등록 버튼 클릭 | CREATE | ✅ | 1ms | Element not present (ok): button:has-text('등록'), button:has-text('추가'), button:h | +| 9 | [CREATE] 거래처 선택 | CREATE | ✅ | 305ms | Clicked (existed): select[name*='vendor'], input[placeholder*='거래처'] | +| 10 | [CREATE] 채권금액 입력 | CREATE | ✅ | 3ms | Element not present (ok): input[name*='amount'], input[placeholder*='금액'] | +| 11 | [CREATE] 필수 검증 #2: 채권 저장 | CREATE | ✅ | 3ms | Element not present (ok): button:has-text('저장'), button:has-text('등록'), button:h | +| 12 | [CREATE] 저장 완료 토스트 확인 | CREATE | ✅ | 510ms | Toast visible: "" | +| 13 | [READ] 등록된 채권 검색 | READ | ✅ | 302ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 14 | [READ] 등록된 채권 확인 | READ | ⚠️ | 1506ms | Detail checks: 0/1 matched | +| 15 | [READ] 채권 상세 조회 | READ | ✅ | 1ms | 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 | ✅ | 507ms | Toast visible: "" | +| 21 | [DELETE] 채권 삭제 | DELETE | ✅ | 2ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 22 | [DELETE] 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1510ms | Detail checks: 0/1 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bad-debt-collection | diff --git a/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_15-27-48.md b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_15-27-48.md new file mode 100644 index 0000000..cbd77a1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_15-27-48.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-03_15-27-48 | **결과**: PASS +**소요 시간**: 10.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | 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, 47 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 17 "... is not valid JSON/raw:Stats: 17 | +| 5 | 거래내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 4 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 | ✅ | 1ms | 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 | ⚠️ | 1011ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 301ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1014ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 319ms | 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 | 인쇄 버튼 확인 | - | ⚠️ | 1015ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bank-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_21-24-50.md b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_21-24-50.md new file mode 100644 index 0000000..863aae8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_21-24-50.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-03_21-24-50 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 계좌입출금내역 | - | ✅ | 510ms | Menu navigation: 회계관리 > 계좌입출금내역 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/accounting/bank-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 49 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 19 "... is not valid JSON/raw:Stats: 19 | +| 5 | 거래내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 5 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 계좌 선택 드롭다운 확인 | - | ✅ | 0ms | 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 | ⚠️ | 1007ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 320ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1014ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 305ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 입금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 출금 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 인쇄 버튼 확인 | - | ⚠️ | 1010ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bank-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_22-25-02.md b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_22-25-02.md new file mode 100644 index 0000000..72a01c3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-03_22-25-02.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-03_22-25-02 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 계좌입출금내역 | - | ✅ | 518ms | Menu navigation: 회계관리 > 계좌입출금내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bank-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 49 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 19 "... is not valid JSON/raw:Stats: 19 | +| 5 | 거래내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 5 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 계좌 선택 드롭다운 확인 | - | ✅ | 0ms | 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 | ⚠️ | 1009ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 315ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1032ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 314ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 입금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 출금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 17 | 인쇄 버튼 확인 | - | ⚠️ | 1001ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bank-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_10-10-00.md b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_10-10-00.md new file mode 100644 index 0000000..03900ca --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_10-10-00.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-04_10-10-00 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 계좌입출금내역 | - | ✅ | 506ms | Menu navigation: 회계관리 > 계좌입출금내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bank-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | 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 | 계좌 선택 드롭다운 확인 | - | ✅ | 1ms | 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 | ⚠️ | 1027ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 315ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1019ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 314ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 입금 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 출금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 인쇄 버튼 확인 | - | ⚠️ | 1023ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bank-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-26-54.md b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-26-54.md new file mode 100644 index 0000000..e385ab1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-26-54.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-04_22-26-54 | **결과**: PASS +**소요 시간**: 10.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 16 | 0 | 2 | 89% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 계좌입출금내역 | - | ✅ | 508ms | Menu navigation: 회계관리 > 계좌입출금내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bank-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 53 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 23 "... is not valid JSON/raw:Stats: 23 | +| 5 | 거래내역 테이블 구조 확인 | - | ✅ | 1ms | Table: 11 cols, 7 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 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 | ⚠️ | 1505ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 306ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1527ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 317ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 입금 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 출금 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bank-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-43-07.md b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-43-07.md new file mode 100644 index 0000000..3b28be2 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bank-transaction_2026-03-04_22-43-07.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 계좌입출금내역 테스트 + +**테스트 ID**: accounting-bank-transaction | **실행**: 2026-03-04_22-43-07 | **결과**: PASS +**소요 시간**: 10.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 16 | 0 | 2 | 89% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 계좌입출금내역 | - | ✅ | 509ms | Menu navigation: 회계관리 > 계좌입출금내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bank-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 53 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 23 "... is not valid JSON/raw:Stats: 23 | +| 5 | 거래내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 7 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 계좌 선택 드롭다운 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 3ms | 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 | ⚠️ | 1506ms | Detail checks: 0/1 matched | +| 11 | [READ] 거래 상세 보기 | READ | ✅ | 301ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1512ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 308ms | 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/bank-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_15-28-07.md b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_15-28-07.md new file mode 100644 index 0000000..a06f3eb --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_15-28-07.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 어음관리 테스트 + +**테스트 ID**: accounting-bill | **실행**: 2026-03-03_15-28-07 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 18 | 0 | 6 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 어음관리 | - | ✅ | 2510ms | Menu navigation: 회계관리 > 어음관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bills | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 91 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 42 "... is not valid JSON/raw:Stats: 42 | +| 5 | 어음 테이블 구조 확인 | - | ✅ | 1ms | Table: 10 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 7" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 313ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 316ms | Clicked (existed): button:has-text('등록'), button:has-text('어음 등록'), button:has-t | +| 9 | [CREATE] 어음 정보 입력 | CREATE | ✅ | 536ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 310ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2536ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1019ms | Detail checks: 0/0 matched | +| 14 | [READ] 어음 상세 페이지 진입 | READ | ✅ | 313ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1009ms | Detail checks: 0/4 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 메모 수정 | UPDATE | ✅ | 1ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 18 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('저장') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2525ms | No toast/notification found | +| 20 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 21 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 22 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1014ms | Detail checks: 0/0 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_21-25-10.md b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_21-25-10.md new file mode 100644 index 0000000..95010a1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_21-25-10.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 어음관리 테스트 + +**테스트 ID**: accounting-bill | **실행**: 2026-03-03_21-25-10 | **결과**: PASS +**소요 시간**: 19.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 18 | 0 | 6 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 어음관리 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 어음관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bills | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 91 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 42 "... is not valid JSON/raw:Stats: 42 | +| 5 | 어음 테이블 구조 확인 | - | ✅ | 1ms | Table: 10 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 7" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 317ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 318ms | Clicked (existed): button:has-text('등록'), button:has-text('어음 등록'), button:has-t | +| 9 | [CREATE] 어음 정보 입력 | CREATE | ✅ | 565ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 308ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2529ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1014ms | Detail checks: 0/0 matched | +| 14 | [READ] 어음 상세 페이지 진입 | READ | ✅ | 302ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1015ms | Detail checks: 0/4 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 메모 수정 | UPDATE | ✅ | 1ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 18 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('저장') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2532ms | No toast/notification found | +| 20 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 21 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 22 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1028ms | Detail checks: 0/0 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 53ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_22-25-22.md b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_22-25-22.md new file mode 100644 index 0000000..32255f3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-03_22-25-22.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 어음관리 테스트 + +**테스트 ID**: accounting-bill | **실행**: 2026-03-03_22-25-22 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 18 | 0 | 6 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 어음관리 | - | ✅ | 2529ms | Menu navigation: 회계관리 > 어음관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bills | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 91 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | 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: 7" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 315ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 316ms | Clicked (existed): button:has-text('등록'), button:has-text('어음 등록'), button:has-t | +| 9 | [CREATE] 어음 정보 입력 | CREATE | ✅ | 550ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 316ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2531ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1003ms | Detail checks: 0/0 matched | +| 14 | [READ] 어음 상세 페이지 진입 | READ | ✅ | 314ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1003ms | Detail checks: 0/4 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 메모 수정 | UPDATE | ✅ | 2ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 18 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('저장') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2545ms | No toast/notification found | +| 20 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 21 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 0ms | Element not present (ok): button:has-text('삭제') | +| 22 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1010ms | Detail checks: 0/0 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 50ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_10-10-20.md b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_10-10-20.md new file mode 100644 index 0000000..2fdc5c1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_10-10-20.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 어음관리 테스트 + +**테스트 ID**: accounting-bill | **실행**: 2026-03-04_10-10-20 | **결과**: PASS +**소요 시간**: 19.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 18 | 0 | 6 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 어음관리 | - | ✅ | 2510ms | Menu navigation: 회계관리 > 어음관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bills | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 91 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: 7" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 302ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 314ms | Clicked (existed): button:has-text('등록'), button:has-text('어음 등록'), button:has-t | +| 9 | [CREATE] 어음 정보 입력 | CREATE | ✅ | 482ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 315ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2537ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1012ms | Detail checks: 0/0 matched | +| 14 | [READ] 어음 상세 페이지 진입 | READ | ✅ | 302ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1019ms | Detail checks: 0/4 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 메모 수정 | UPDATE | ✅ | 2ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 18 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('저장') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2530ms | No toast/notification found | +| 20 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 21 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 22 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1006ms | Detail checks: 0/0 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 51ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_22-43-29.md b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_22-43-29.md new file mode 100644 index 0000000..4add57f --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-bill_2026-03-04_22-43-29.md @@ -0,0 +1,48 @@ +# ✅ E2E 테스트 성공: 어음관리 테스트 + +**테스트 ID**: accounting-bill | **실행**: 2026-03-04_22-43-29 | **결과**: PASS +**소요 시간**: 22.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 24 | 18 | 0 | 6 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 어음관리 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 어음관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/bills | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 91 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: 7" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 307ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 어음 등록 버튼 클릭 | CREATE | ✅ | 318ms | Clicked (existed): button:has-text('등록'), button:has-text('어음 등록'), button:has-t | +| 9 | [CREATE] 어음 정보 입력 | CREATE | ✅ | 487ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 313ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3021ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1511ms | Detail checks: 0/0 matched | +| 14 | [READ] 어음 상세 페이지 진입 | READ | ✅ | 307ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1512ms | Detail checks: 0/4 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 메모 수정 | UPDATE | ✅ | 1ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 18 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('저장') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 3028ms | No toast/notification found | +| 20 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1508ms | Detail checks: 0/1 matched | +| 21 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 22 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 23 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1514ms | Detail checks: 0/0 matched | +| 24 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_14-51-31.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_14-51-31.md new file mode 100644 index 0000000..22db54f --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_14-51-31.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-03_14-51-31 | **결과**: PASS +**소요 시간**: 10.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 514ms | Menu navigation: 회계관리 > 카드사용내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/card-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 61 inputs, 130 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 36 "... is not valid JSON/raw:Stats: 36 | +| 5 | 카드내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 17 cols, 15 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 32" is not valid JSON/raw:Filter | +| 7 | 카드 선택 드롭다운 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 2ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 3ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1023ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1019ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 314ms | 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 | 인쇄 버튼 확인 | - | ⚠️ | 1017ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_15-28-17.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_15-28-17.md new file mode 100644 index 0000000..e6f3c63 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_15-28-17.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-03_15-28-17 | **결과**: PASS +**소요 시간**: 10.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 519ms | 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 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 36 "... is not valid JSON/raw:Stats: 36 | +| 5 | 카드내역 테이블 구조 확인 | - | ✅ | 1ms | Table: 17 cols, 15 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 32" is not valid JSON/raw:Filter | +| 7 | 카드 선택 드롭다운 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 3ms | 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 | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 302ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1015ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 310ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 사용금액 합계 확인 | - | ✅ | 2ms | Checks: 1/1 verified | +| 15 | 카드별 사용 현황 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 17 | 인쇄 버튼 확인 | - | ⚠️ | 1002ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_21-25-20.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_21-25-20.md new file mode 100644 index 0000000..876adf7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_21-25-20.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-03_21-25-20 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 517ms | Menu navigation: 회계관리 > 카드사용내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/card-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | 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 | 카드 선택 드롭다운 확인 | - | ✅ | 0ms | 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 | ⚠️ | 1012ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 304ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1009ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 318ms | 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 | 인쇄 버튼 확인 | - | ⚠️ | 1031ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_22-25-32.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_22-25-32.md new file mode 100644 index 0000000..7f94437 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-03_22-25-32.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-03_22-25-32 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 510ms | Menu navigation: 회계관리 > 카드사용내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/card-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 61 inputs, 130 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 5ms | json_fail:Unexpected token 'S', "Stats: 36 "... is not valid JSON/raw:Stats: 36 | +| 5 | 카드내역 테이블 구조 확인 | - | ✅ | 1ms | Table: 17 cols, 15 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 2ms | json_fail:Unexpected token 'F', "Filters found: 32" is not valid JSON/raw:Filter | +| 7 | 카드 선택 드롭다운 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 3ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 4ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 305ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1008ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 312ms | 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 | 인쇄 버튼 확인 | - | ⚠️ | 1016ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_10-10-30.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_10-10-30.md new file mode 100644 index 0000000..3cbe4b8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_10-10-30.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-04_10-10-30 | **결과**: PASS +**소요 시간**: 10.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 520ms | Menu navigation: 회계관리 > 카드사용내역 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/accounting/card-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | 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 | ✅ | 3ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 301ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1016ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 314ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 사용금액 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 카드별 사용 현황 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 인쇄 버튼 확인 | - | ⚠️ | 1016ms | Checks: 0/1 verified | +| 18 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-29-50.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-29-50.md new file mode 100644 index 0000000..aed019f --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-29-50.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-04_22-29-50 | **결과**: PASS +**소요 시간**: 10.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 16 | 0 | 2 | 89% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 509ms | 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 | 통계 카드 확인 | - | ✅ | 2ms | 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 | ⚠️ | 1504ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 312ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1518ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 316ms | 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 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-43-40.md b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-43-40.md new file mode 100644 index 0000000..5940622 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-card-history_2026-03-04_22-43-40.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 카드사용내역 테스트 + +**테스트 ID**: accounting-card-history | **실행**: 2026-03-04_22-43-40 | **결과**: PASS +**소요 시간**: 10.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 16 | 0 | 2 | 89% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 카드사용내역 | - | ✅ | 516ms | Menu navigation: 회계관리 > 카드사용내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/card-transactions | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 61 inputs, 130 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 36 "... is not valid JSON/raw:Stats: 36 | +| 5 | 카드내역 테이블 구조 확인 | - | ✅ | 0ms | Table: 17 cols, 15 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 32" is not valid JSON/raw:Filter | +| 7 | 카드 선택 드롭다운 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 1ms | 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 | ⚠️ | 1512ms | Detail checks: 0/1 matched | +| 11 | [READ] 카드 사용내역 상세 보기 | READ | ✅ | 308ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1517ms | Detail checks: 0/4 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 315ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 사용금액 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 카드별 사용 현황 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 3ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/card-transactions | diff --git a/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_15-28-34.md b/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_15-28-34.md new file mode 100644 index 0000000..e85a2bf --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_15-28-34.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 회계거래처관리 테스트 + +**테스트 ID**: accounting-client | **실행**: 2026-03-03_15-28-34 | **결과**: PASS +**소요 시간**: 16.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 20 | 0 | 3 | 87% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 거래처관리 | - | ✅ | 2522ms | Menu navigation: 회계관리 > 거래처관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/vendors | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 86 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 5 | 거래처 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | [CREATE] 거래처 등록 버튼 클릭 | CREATE | ✅ | 313ms | Clicked (existed): button:has-text('거래처 등록'), button:has-text('등록'), button:has- | +| 8 | [CREATE] 거래처 정보 입력 | CREATE | ✅ | 654ms | fill_form: 4/5 filled | +| 9 | [CREATE] 거래처 구분 선택 | CREATE | ✅ | 302ms | Clicked (existed): #clientType-매출, label:has-text('매출') input[type='radio'], but | +| 10 | [CREATE] 필수 검증 #2: 거래처 저장 | CREATE | ✅ | 311ms | Clicked (existed): button:has-text('저장'), button:has-text('등록'), button:has-text | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2540ms | No toast/notification found | +| 12 | [READ] 등록된 거래처 검색 | READ | ✅ | 315ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 13 | [READ] 등록된 거래처 목록 확인 | READ | ⚠️ | 1010ms | Detail checks: 0/1 matched | +| 14 | [READ] 거래처 상세 조회 | READ | ✅ | 319ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | 상세 페이지 정보 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 320ms | Clicked (existed): button:has-text('수정'), button:has-text('편집') | +| 17 | [UPDATE] 거래처 정보 수정 | UPDATE | ✅ | 2ms | Element not present (ok): input[name*='name'], input[placeholder*='거래처명'] | +| 18 | [UPDATE] 거래처 저장 | UPDATE | ✅ | 314ms | Clicked (existed): button:has-text('저장'), button:has-text('확인') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 515ms | Toast visible: "" | +| 20 | [DELETE] 거래처 삭제 | DELETE | ✅ | 6ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 21 | [DELETE] 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 22 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1009ms | Detail checks: 0/1 matched | +| 23 | 콘솔 에러 확인 | - | ✅ | 3ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 18 | 18 | 0 | 108ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_21-25-36.md b/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_21-25-36.md new file mode 100644 index 0000000..db17b9d --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_21-25-36.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 회계거래처관리 테스트 + +**테스트 ID**: accounting-client | **실행**: 2026-03-03_21-25-36 | **결과**: PASS +**소요 시간**: 16.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 20 | 0 | 3 | 87% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 거래처관리 | - | ✅ | 2516ms | Menu navigation: 회계관리 > 거래처관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/vendors | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 86 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 5 | 거래처 테이블 구조 확인 | - | ✅ | 1ms | Table: 11 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | [CREATE] 거래처 등록 버튼 클릭 | CREATE | ✅ | 317ms | Clicked (existed): button:has-text('거래처 등록'), button:has-text('등록'), button:has- | +| 8 | [CREATE] 거래처 정보 입력 | CREATE | ✅ | 651ms | fill_form: 4/5 filled | +| 9 | [CREATE] 거래처 구분 선택 | CREATE | ✅ | 312ms | Clicked (existed): #clientType-매출, label:has-text('매출') input[type='radio'], but | +| 10 | [CREATE] 필수 검증 #2: 거래처 저장 | CREATE | ✅ | 306ms | Clicked (existed): button:has-text('저장'), button:has-text('등록'), button:has-text | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2539ms | No toast/notification found | +| 12 | [READ] 등록된 거래처 검색 | READ | ✅ | 307ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 13 | [READ] 등록된 거래처 목록 확인 | READ | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 14 | [READ] 거래처 상세 조회 | READ | ✅ | 304ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | 상세 페이지 정보 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 308ms | Clicked (existed): button:has-text('수정'), button:has-text('편집') | +| 17 | [UPDATE] 거래처 정보 수정 | UPDATE | ✅ | 2ms | Element not present (ok): input[name*='name'], input[placeholder*='거래처명'] | +| 18 | [UPDATE] 거래처 저장 | UPDATE | ✅ | 315ms | Clicked (existed): button:has-text('저장'), button:has-text('확인') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 509ms | 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 | ⚠️ | 1010ms | Detail checks: 0/1 matched | +| 23 | 콘솔 에러 확인 | - | ✅ | 3ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 18 | 18 | 0 | 113ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_22-25-48.md b/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_22-25-48.md new file mode 100644 index 0000000..b37a54e --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-client_2026-03-03_22-25-48.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 회계거래처관리 테스트 + +**테스트 ID**: accounting-client | **실행**: 2026-03-03_22-25-48 | **결과**: PASS +**소요 시간**: 16.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 20 | 0 | 3 | 87% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 거래처관리 | - | ✅ | 2526ms | Menu navigation: 회계관리 > 거래처관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/vendors | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 86 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 | ✅ | 312ms | Clicked (existed): button:has-text('거래처 등록'), button:has-text('등록'), button:has- | +| 8 | [CREATE] 거래처 정보 입력 | CREATE | ✅ | 640ms | fill_form: 4/5 filled | +| 9 | [CREATE] 거래처 구분 선택 | CREATE | ✅ | 311ms | Clicked (existed): #clientType-매출, label:has-text('매출') input[type='radio'], but | +| 10 | [CREATE] 필수 검증 #2: 거래처 저장 | CREATE | ✅ | 307ms | Clicked (existed): button:has-text('저장'), button:has-text('등록'), button:has-text | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2551ms | No toast/notification found | +| 12 | [READ] 등록된 거래처 검색 | READ | ✅ | 311ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 13 | [READ] 등록된 거래처 목록 확인 | READ | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 14 | [READ] 거래처 상세 조회 | READ | ✅ | 311ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | 상세 페이지 정보 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 306ms | Clicked (existed): button:has-text('수정'), button:has-text('편집') | +| 17 | [UPDATE] 거래처 정보 수정 | UPDATE | ✅ | 1ms | Element not present (ok): input[name*='name'], input[placeholder*='거래처명'] | +| 18 | [UPDATE] 거래처 저장 | UPDATE | ✅ | 308ms | Clicked (existed): button:has-text('저장'), button:has-text('확인') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 511ms | Toast visible: "" | +| 20 | [DELETE] 거래처 삭제 | DELETE | ✅ | 4ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 21 | [DELETE] 삭제 확인 | DELETE | ✅ | 3ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 22 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1025ms | Detail checks: 0/1 matched | +| 23 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 18 | 18 | 0 | 100ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-accounting-client_2026-03-04_10-10-46.md b/e2e/results/hotfix/success/OK-accounting-client_2026-03-04_10-10-46.md new file mode 100644 index 0000000..fd31e40 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-client_2026-03-04_10-10-46.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 회계거래처관리 테스트 + +**테스트 ID**: accounting-client | **실행**: 2026-03-04_10-10-46 | **결과**: PASS +**소요 시간**: 16.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 20 | 0 | 3 | 87% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 거래처관리 | - | ✅ | 2516ms | Menu navigation: 회계관리 > 거래처관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/vendors | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 86 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 5 | 거래처 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | [CREATE] 거래처 등록 버튼 클릭 | CREATE | ✅ | 314ms | Clicked (existed): button:has-text('거래처 등록'), button:has-text('등록'), button:has- | +| 8 | [CREATE] 거래처 정보 입력 | CREATE | ✅ | 635ms | fill_form: 4/5 filled | +| 9 | [CREATE] 거래처 구분 선택 | CREATE | ✅ | 313ms | Clicked (existed): #clientType-매출, label:has-text('매출') input[type='radio'], but | +| 10 | [CREATE] 필수 검증 #2: 거래처 저장 | CREATE | ✅ | 308ms | Clicked (existed): button:has-text('저장'), button:has-text('등록'), button:has-text | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2531ms | No toast/notification found | +| 12 | [READ] 등록된 거래처 검색 | READ | ✅ | 314ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 13 | [READ] 등록된 거래처 목록 확인 | READ | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 14 | [READ] 거래처 상세 조회 | READ | ✅ | 314ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | 상세 페이지 정보 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 317ms | Clicked (existed): button:has-text('수정'), button:has-text('편집') | +| 17 | [UPDATE] 거래처 정보 수정 | UPDATE | ✅ | 6ms | Element not present (ok): input[name*='name'], input[placeholder*='거래처명'] | +| 18 | [UPDATE] 거래처 저장 | UPDATE | ✅ | 312ms | Clicked (existed): button:has-text('저장'), button:has-text('확인') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 513ms | Toast visible: "" | +| 20 | [DELETE] 거래처 삭제 | DELETE | ✅ | 6ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 21 | [DELETE] 삭제 확인 | DELETE | ✅ | 4ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 22 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1012ms | Detail checks: 0/1 matched | +| 23 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 18 | 18 | 0 | 109ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-accounting-client_2026-03-04_22-43-58.md b/e2e/results/hotfix/success/OK-accounting-client_2026-03-04_22-43-58.md new file mode 100644 index 0000000..c8d42db --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-client_2026-03-04_22-43-58.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 회계거래처관리 테스트 + +**테스트 ID**: accounting-client | **실행**: 2026-03-04_22-43-58 | **결과**: PASS +**소요 시간**: 18.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 20 | 0 | 3 | 87% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 거래처관리 | - | ✅ | 2512ms | Menu navigation: 회계관리 > 거래처관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/vendors | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 86 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 5 | 거래처 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | [CREATE] 거래처 등록 버튼 클릭 | CREATE | ✅ | 317ms | Clicked (existed): button:has-text('거래처 등록'), button:has-text('등록'), button:has- | +| 8 | [CREATE] 거래처 정보 입력 | CREATE | ✅ | 622ms | fill_form: 4/5 filled | +| 9 | [CREATE] 거래처 구분 선택 | CREATE | ✅ | 302ms | Clicked (existed): #clientType-매출, label:has-text('매출') input[type='radio'], but | +| 10 | [CREATE] 필수 검증 #2: 거래처 저장 | CREATE | ✅ | 309ms | Clicked (existed): button:has-text('저장'), button:has-text('등록'), button:has-text | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3044ms | No toast/notification found | +| 12 | [READ] 등록된 거래처 검색 | READ | ✅ | 307ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 13 | [READ] 등록된 거래처 목록 확인 | READ | ⚠️ | 1515ms | Detail checks: 0/1 matched | +| 14 | [READ] 거래처 상세 조회 | READ | ✅ | 310ms | Clicked (existed): table tbody tr:first-child, table tbody tr:nth-child(1), tabl | +| 15 | 상세 페이지 정보 확인 | - | ✅ | 1ms | Checks: 1/3 verified | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 307ms | Clicked (existed): button:has-text('수정'), button:has-text('편집') | +| 17 | [UPDATE] 거래처 정보 수정 | UPDATE | ✅ | 3ms | Element not present (ok): input[name*='name'], input[placeholder*='거래처명'] | +| 18 | [UPDATE] 거래처 저장 | UPDATE | ✅ | 307ms | Clicked (existed): button:has-text('저장'), button:has-text('확인') | +| 19 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ✅ | 505ms | Toast visible: "" | +| 20 | [DELETE] 거래처 삭제 | DELETE | ✅ | 4ms | Element not present (ok): button:has-text('삭제'), button:has-text('제거') | +| 21 | [DELETE] 삭제 확인 | DELETE | ✅ | 3ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 22 | [DELETE] 삭제 확인 | DELETE | ⚠️ | 1510ms | Detail checks: 0/1 matched | +| 23 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 20 | 20 | 0 | 116ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_15-28-46.md b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_15-28-46.md new file mode 100644 index 0000000..7490e70 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_15-28-46.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 일일 일보 테스트 + +**테스트 ID**: accounting-daily-report | **실행**: 2026-03-03_15-28-46 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일일 일보 | - | ✅ | 2518ms | Menu navigation: 회계관리 > 일일 일보 | +| 2 | 페이지 로드 대기 | - | ✅ | 3017ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 0 inputs, 24 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 6 rows | +| 5 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 14 cards" is not valid JSON/raw:Stats: 1 | +| 6 | 일보 테이블 구조 확인 | - | ✅ | 1ms | Table: 4 cols, 5 rows | +| 7 | [FILTER] 날짜 필터 | FILTER | ✅ | 2ms | 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 | 인쇄/다운로드 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'E', "Export buttons: 엑셀" is not valid JSON/raw:Expor | +| 10 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/daily-report | diff --git a/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_21-25-48.md b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_21-25-48.md new file mode 100644 index 0000000..1247416 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_21-25-48.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 일일 일보 테스트 + +**테스트 ID**: accounting-daily-report | **실행**: 2026-03-03_21-25-48 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일일 일보 | - | ✅ | 2516ms | Menu navigation: 회계관리 > 일일 일보 | +| 2 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 0 inputs, 24 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 9 rows | +| 5 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 17 cards" is not valid JSON/raw:Stats: 1 | +| 6 | 일보 테이블 구조 확인 | - | ✅ | 0ms | Table: 4 cols, 8 rows | +| 7 | [FILTER] 날짜 필터 | FILTER | ✅ | 1ms | 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 buttons: 엑셀" is not valid JSON/raw:Expor | +| 10 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/daily-report | diff --git a/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_22-26-00.md b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_22-26-00.md new file mode 100644 index 0000000..e31ca18 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-03_22-26-00.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 일일 일보 테스트 + +**테스트 ID**: accounting-daily-report | **실행**: 2026-03-03_22-26-00 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일일 일보 | - | ✅ | 2505ms | Menu navigation: 회계관리 > 일일 일보 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 0 inputs, 24 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 9 rows | +| 5 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 17 cards" is not valid JSON/raw:Stats: 1 | +| 6 | 일보 테이블 구조 확인 | - | ✅ | 0ms | Table: 4 cols, 8 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 buttons: 엑셀" is not valid JSON/raw:Expor | +| 10 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/daily-report | diff --git a/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_10-10-58.md b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_10-10-58.md new file mode 100644 index 0000000..5d5599d --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_10-10-58.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 일일 일보 테스트 + +**테스트 ID**: accounting-daily-report | **실행**: 2026-03-04_10-10-58 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일일 일보 | - | ✅ | 2515ms | Menu navigation: 회계관리 > 일일 일보 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 0 inputs, 24 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 6 rows | +| 5 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 14 cards" is not valid JSON/raw:Stats: 1 | +| 6 | 일보 테이블 구조 확인 | - | ✅ | 0ms | Table: 4 cols, 5 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 buttons: 엑셀" is not valid JSON/raw:Expor | +| 10 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/daily-report | diff --git a/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_22-44-09.md b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_22-44-09.md new file mode 100644 index 0000000..e50eb78 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-daily-report_2026-03-04_22-44-09.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 일일 일보 테스트 + +**테스트 ID**: accounting-daily-report | **실행**: 2026-03-04_22-44-09 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일일 일보 | - | ✅ | 2517ms | Menu navigation: 회계관리 > 일일 일보 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 0 inputs, 24 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 9 rows | +| 5 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 17 cards" is not valid JSON/raw:Stats: 1 | +| 6 | 일보 테이블 구조 확인 | - | ✅ | 0ms | Table: 4 cols, 8 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 buttons: 엑셀" is not valid JSON/raw:Expor | +| 10 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/daily-report | diff --git a/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_15-29-05.md b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_15-29-05.md new file mode 100644 index 0000000..ea3e3ad --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_15-29-05.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: accounting-deposit | **실행**: 2026-03-03_15-29-05 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 입금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/deposits | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 입금 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 307ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 312ms | Clicked (existed): button:has-text('등록'), button:has-text('입금 등록'), button:has-t | +| 9 | [CREATE] 입금 정보 입력 | CREATE | ✅ | 479ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 309ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2522ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1016ms | 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 | ⚠️ | 1014ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 316ms | Clicked (existed): input[name*='amount'], input[placeholder*='금액'] | +| 18 | [UPDATE] 메모 수정 | UPDATE | ✅ | 1ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 19 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('저장') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2539ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1009ms | 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 | ⚠️ | 1018ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 92ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_21-26-07.md b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_21-26-07.md new file mode 100644 index 0000000..46b65cd --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_21-26-07.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: accounting-deposit | **실행**: 2026-03-03_21-26-07 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2516ms | Menu navigation: 회계관리 > 입금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/deposits | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 입금 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 310ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 314ms | Clicked (existed): button:has-text('등록'), button:has-text('입금 등록'), button:has-t | +| 9 | [CREATE] 입금 정보 입력 | CREATE | ✅ | 473ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 313ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2520ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1030ms | Detail checks: 0/0 matched | +| 14 | [READ] 입금 상세 페이지 진입 | READ | ✅ | 3ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1013ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 314ms | 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 | ⚠️ | 2548ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1016ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 3ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1012ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_22-26-20.md b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_22-26-20.md new file mode 100644 index 0000000..761cf64 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-03_22-26-20.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: accounting-deposit | **실행**: 2026-03-03_22-26-20 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2518ms | Menu navigation: 회계관리 > 입금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/deposits | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 입금 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 304ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 314ms | Clicked (existed): button:has-text('등록'), button:has-text('입금 등록'), button:has-t | +| 9 | [CREATE] 입금 정보 입력 | CREATE | ✅ | 504ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 312ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2533ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1002ms | Detail checks: 0/0 matched | +| 14 | [READ] 입금 상세 페이지 진입 | READ | ✅ | 2ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1015ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 313ms | 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 | ⚠️ | 2535ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1002ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1012ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_10-11-17.md b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_10-11-17.md new file mode 100644 index 0000000..d0df284 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_10-11-17.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: accounting-deposit | **실행**: 2026-03-04_10-11-17 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2512ms | Menu navigation: 회계관리 > 입금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/deposits | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | 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 | 검색 기능 테스트 | - | ✅ | 311ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 317ms | Clicked (existed): button:has-text('등록'), button:has-text('입금 등록'), button:has-t | +| 9 | [CREATE] 입금 정보 입력 | CREATE | ✅ | 472ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 311ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2537ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1014ms | Detail checks: 0/0 matched | +| 14 | [READ] 입금 상세 페이지 진입 | READ | ✅ | 3ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1012ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 317ms | 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 | ⚠️ | 2532ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1012ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 3ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1016ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 52ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_22-44-32.md b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_22-44-32.md new file mode 100644 index 0000000..fa88fff --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-deposit_2026-03-04_22-44-32.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: accounting-deposit | **실행**: 2026-03-04_22-44-32 | **결과**: PASS +**소요 시간**: 22.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2515ms | 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 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 313ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 입금 등록 버튼 클릭 | CREATE | ✅ | 316ms | Clicked (existed): button:has-text('등록'), button:has-text('입금 등록'), button:has-t | +| 9 | [CREATE] 입금 정보 입력 | CREATE | ✅ | 471ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 314ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3051ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1515ms | Detail checks: 0/0 matched | +| 14 | [READ] 입금 상세 페이지 진입 | READ | ✅ | 3ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1517ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 304ms | 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 | ⚠️ | 3025ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1511ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 0ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 1ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1506ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 100ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_15-29-17.md b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_15-29-17.md new file mode 100644 index 0000000..a9763a8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_15-29-17.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 지출예상내역서 테스트 + +**테스트 ID**: accounting-expense-forecast | **실행**: 2026-03-03_15-29-17 | **결과**: PASS +**소요 시간**: 11.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 지출예상내역서 | - | ✅ | 518ms | Menu navigation: 회계관리 > 지출예상내역서 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/expected-expenses | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 지출예상 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 27 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 | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 11 | 지출 카테고리별 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 12 | 합계 금액 확인 | - | ⚠️ | 1013ms | Detail checks: 0/1 matched | +| 13 | 일별 지출 예상 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 주요 지출 항목 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 인쇄 버튼 확인 | - | ⚠️ | 1018ms | Checks: 0/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1003ms | Checks: 0/1 verified | +| 17 | PDF 내보내기 확인 | - | ⚠️ | 1014ms | Checks: 0/1 verified | +| 18 | 이전/다음 기간 네비게이션 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/expected-expenses | diff --git a/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_21-26-19.md b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_21-26-19.md new file mode 100644 index 0000000..99c9167 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_21-26-19.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 지출예상내역서 테스트 + +**테스트 ID**: accounting-expense-forecast | **실행**: 2026-03-03_21-26-19 | **결과**: PASS +**소요 시간**: 11.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 지출예상내역서 | - | ✅ | 515ms | Menu navigation: 회계관리 > 지출예상내역서 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/expected-expenses | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 지출예상 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 27 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | 기간 선택 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [FILTER] 월 선택 | FILTER | ✅ | 4ms | Element not present (ok): input[type='month'], select[name*='month'], [class*='m | +| 9 | [FILTER] 조회 적용 | FILTER | ✅ | 3ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | 지출 카테고리별 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 12 | 합계 금액 확인 | - | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 13 | 일별 지출 예상 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 주요 지출 항목 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 인쇄 버튼 확인 | - | ⚠️ | 1017ms | Checks: 0/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1015ms | Checks: 0/1 verified | +| 17 | PDF 내보내기 확인 | - | ⚠️ | 1006ms | Checks: 0/1 verified | +| 18 | 이전/다음 기간 네비게이션 | - | ✅ | 1ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/expected-expenses | diff --git a/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_22-26-31.md b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_22-26-31.md new file mode 100644 index 0000000..5b3493c --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-03_22-26-31.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 지출예상내역서 테스트 + +**테스트 ID**: accounting-expense-forecast | **실행**: 2026-03-03_22-26-31 | **결과**: PASS +**소요 시간**: 11.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 지출예상내역서 | - | ✅ | 511ms | Menu navigation: 회계관리 > 지출예상내역서 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/expected-expenses | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 지출예상 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 27 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 | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | 지출 카테고리별 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 12 | 합계 금액 확인 | - | ⚠️ | 1011ms | Detail checks: 0/1 matched | +| 13 | 일별 지출 예상 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 주요 지출 항목 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 인쇄 버튼 확인 | - | ⚠️ | 1004ms | Checks: 0/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1012ms | Checks: 0/1 verified | +| 17 | PDF 내보내기 확인 | - | ⚠️ | 1002ms | Checks: 0/1 verified | +| 18 | 이전/다음 기간 네비게이션 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/expected-expenses | diff --git a/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_10-11-29.md b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_10-11-29.md new file mode 100644 index 0000000..a81cb7c --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_10-11-29.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 지출예상내역서 테스트 + +**테스트 ID**: accounting-expense-forecast | **실행**: 2026-03-04_10-11-29 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 지출예상내역서 | - | ✅ | 507ms | Menu navigation: 회계관리 > 지출예상내역서 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/expected-expenses | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 지출예상 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 27 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 | ⚠️ | 1011ms | Detail checks: 0/1 matched | +| 11 | 지출 카테고리별 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 12 | 합계 금액 확인 | - | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 13 | 일별 지출 예상 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 14 | 주요 지출 항목 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 인쇄 버튼 확인 | - | ⚠️ | 1015ms | Checks: 0/1 verified | +| 16 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1006ms | Checks: 0/1 verified | +| 17 | PDF 내보내기 확인 | - | ⚠️ | 1013ms | Checks: 0/1 verified | +| 18 | 이전/다음 기간 네비게이션 | - | ✅ | 1ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/expected-expenses | diff --git a/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_22-44-41.md b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_22-44-41.md new file mode 100644 index 0000000..bc9332e --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-expense-forecast_2026-03-04_22-44-41.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 지출예상내역서 테스트 + +**테스트 ID**: accounting-expense-forecast | **실행**: 2026-03-04_22-44-41 | **결과**: PASS +**소요 시간**: 9.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 14 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 지출예상내역서 | - | ✅ | 504ms | Menu navigation: 회계관리 > 지출예상내역서 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/expected-expenses | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 지출예상 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 27 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 7 | 기간 선택 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 8 | [FILTER] 월 선택 | FILTER | ✅ | 1ms | Element not present (ok): input[type='month'], select[name*='month'], [class*='m | +| 9 | [FILTER] 조회 적용 | FILTER | ✅ | 2ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 10 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1514ms | Detail checks: 0/1 matched | +| 11 | 지출 카테고리별 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 12 | 합계 금액 확인 | - | ⚠️ | 1523ms | Detail checks: 0/1 matched | +| 13 | 일별 지출 예상 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 14 | 주요 지출 항목 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 이전/다음 기간 네비게이션 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/expected-expenses | diff --git a/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-18-10.md b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-18-10.md new file mode 100644 index 0000000..f94e1e6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-18-10.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-03_15-18-10 | **결과**: PASS +**소요 시간**: 12.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 510ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 35 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 270ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 4ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 309ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-29-29.md b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-29-29.md new file mode 100644 index 0000000..b961625 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_15-29-29.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-03_15-29-29 | **결과**: PASS +**소요 시간**: 12.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 505ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 35 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 218ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 301ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_21-26-31.md b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_21-26-31.md new file mode 100644 index 0000000..cc60a3f --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_21-26-31.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-03_21-26-31 | **결과**: PASS +**소요 시간**: 12.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 515ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 35 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 215ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 315ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_22-26-43.md b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_22-26-43.md new file mode 100644 index 0000000..86872c2 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-03_22-26-43.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-03_22-26-43 | **결과**: PASS +**소요 시간**: 12.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 516ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 35 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 206ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 316ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1034ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_10-11-41.md b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_10-11-41.md new file mode 100644 index 0000000..a56d674 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_10-11-41.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-04_10-11-41 | **결과**: PASS +**소요 시간**: 12.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 508ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 35 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 208ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1013ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 311ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1005ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_22-44-54.md b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_22-44-54.md new file mode 100644 index 0000000..09eccda --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-gift-card_2026-03-04_22-44-54.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 상품권관리 테스트 + +**테스트 ID**: accounting-gift-card | **실행**: 2026-03-04_22-44-54 | **결과**: PASS +**소요 시간**: 13.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 9 | 0 | 2 | 82% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 상품권관리 | - | ✅ | 509ms | Menu navigation: 회계관리 > 상품권관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 35 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 상품권 테이블 구조 확인 | - | ✅ | 0ms | Table: 9 cols, 1 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 203ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1519ms | Detail checks: 0/1 matched | +| 8 | 등록 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 9 | 상세 행 클릭 | - | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1517ms | Detail checks: 0/1 matched | +| 11 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/gift-certificates | diff --git a/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_15-29-43.md b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_15-29-43.md new file mode 100644 index 0000000..190363c --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_15-29-43.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 일반전표입력 테스트 + +**테스트 ID**: accounting-journal-entry | **실행**: 2026-03-03_15-29-43 | **결과**: PASS +**소요 시간**: 14.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일반전표입력 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 일반전표입력 | +| 2 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 44 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 전표 테이블 구조 확인 | - | ✅ | 1ms | Table: 10 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 206ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 3ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | 등록 버튼 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'C', "Create but"... is not valid JSON/raw:Create but | +| 10 | 상세 행 클릭 | - | ✅ | 308ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1006ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 354ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/general-journal-entry | diff --git a/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_21-26-45.md b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_21-26-45.md new file mode 100644 index 0000000..7325534 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_21-26-45.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 일반전표입력 테스트 + +**테스트 ID**: accounting-journal-entry | **실행**: 2026-03-03_21-26-45 | **결과**: PASS +**소요 시간**: 14.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일반전표입력 | - | ✅ | 2517ms | Menu navigation: 회계관리 > 일반전표입력 | +| 2 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 44 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 전표 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 212ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1004ms | 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 | 상세 행 클릭 | - | ✅ | 315ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 358ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/general-journal-entry | diff --git a/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_22-26-58.md b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_22-26-58.md new file mode 100644 index 0000000..f047d96 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-03_22-26-58.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 일반전표입력 테스트 + +**테스트 ID**: accounting-journal-entry | **실행**: 2026-03-03_22-26-58 | **결과**: PASS +**소요 시간**: 14.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일반전표입력 | - | ✅ | 2528ms | Menu navigation: 회계관리 > 일반전표입력 | +| 2 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 44 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 전표 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 212ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 4ms | 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 | 상세 행 클릭 | - | ✅ | 311ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1001ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 455ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/general-journal-entry | diff --git a/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_10-11-55.md b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_10-11-55.md new file mode 100644 index 0000000..b6ae347 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_10-11-55.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 일반전표입력 테스트 + +**테스트 ID**: accounting-journal-entry | **실행**: 2026-03-04_10-11-55 | **결과**: PASS +**소요 시간**: 14.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일반전표입력 | - | ✅ | 2518ms | Menu navigation: 회계관리 > 일반전표입력 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 44 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 5 | 전표 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 210ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 4ms | 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 | 상세 행 클릭 | - | ✅ | 311ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 367ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/general-journal-entry | diff --git a/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_22-45-10.md b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_22-45-10.md new file mode 100644 index 0000000..ffa7d39 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-journal-entry_2026-03-04_22-45-10.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 일반전표입력 테스트 + +**테스트 ID**: accounting-journal-entry | **실행**: 2026-03-04_22-45-10 | **결과**: PASS +**소요 시간**: 15.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 일반전표입력 | - | ✅ | 2532ms | Menu navigation: 회계관리 > 일반전표입력 | +| 2 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 44 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 5 | 전표 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 203ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1506ms | 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 | 상세 행 클릭 | - | ✅ | 308ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1518ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 417ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/general-journal-entry | diff --git a/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_15-29-57.md b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_15-29-57.md new file mode 100644 index 0000000..5285815 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_15-29-57.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 결제내역 테스트 + +**테스트 ID**: accounting-payment | **실행**: 2026-03-03_15-29-57 | **결과**: PASS +**소요 시간**: 13.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 결제내역 | - | ✅ | 2532ms | Menu navigation: 회계관리 > 결제내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/payment-history | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 0 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 28 "... is not valid JSON/raw:Stats: 28 | +| 5 | 결제내역 페이지 구조 확인 | - | ⚠️ | 1012ms | Checks: 0/4 verified | +| 6 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 2ms | Element not present (ok): input[type='date']:first-of-type, input[name*='start'] | +| 7 | [FILTER] 기간 필터 - 종료일 | FILTER | ✅ | 2ms | Element not present (ok): input[type='date']:last-of-type, input[name*='end'] | +| 8 | [FILTER] 조회 버튼 클릭 | FILTER | ✅ | 2ms | 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 | ⚠️ | 1010ms | Detail checks: 0/2 matched | +| 12 | [FILTER] 결제방법 필터 테스트 | FILTER | ✅ | 3ms | Element not present (ok): select[name*='method'], button:has-text('결제방법'), [clas | +| 13 | [FILTER] 상태 필터 테스트 | FILTER | ⚠️ | 1030ms | Checks: 0/1 verified | +| 14 | [READ] 결제 상세 조회 | READ | ✅ | 311ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 15 | 결제 상세 정보 확인 | - | ⚠️ | 1019ms | Detail checks: 0/4 matched | +| 16 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), button:has-text('뒤로'), [class*='back'] | +| 17 | 필수 검증 #1: 엑셀 다운로드 | - | ✅ | 8ms | Element not present (ok): button:has-text('엑셀'), button:has-text('Excel'), butto | +| 18 | 합계 금액 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/payment-history | diff --git a/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_21-26-59.md b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_21-26-59.md new file mode 100644 index 0000000..9ee9804 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_21-26-59.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 결제내역 테스트 + +**테스트 ID**: accounting-payment | **실행**: 2026-03-03_21-26-59 | **결과**: PASS +**소요 시간**: 13.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 결제내역 | - | ✅ | 2512ms | Menu navigation: 회계관리 > 결제내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/payment-history | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 0 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 28 "... is not valid JSON/raw:Stats: 28 | +| 5 | 결제내역 페이지 구조 확인 | - | ⚠️ | 1015ms | Checks: 0/4 verified | +| 6 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 3ms | Element not present (ok): input[type='date']:first-of-type, input[name*='start'] | +| 7 | [FILTER] 기간 필터 - 종료일 | FILTER | ✅ | 3ms | 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 | ✅ | 1ms | Table: 6 cols, 13 rows | +| 10 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 11 | [READ] 결제 데이터 표시 확인 | READ | ⚠️ | 1006ms | Detail checks: 0/2 matched | +| 12 | [FILTER] 결제방법 필터 테스트 | FILTER | ✅ | 1ms | Element not present (ok): select[name*='method'], button:has-text('결제방법'), [clas | +| 13 | [FILTER] 상태 필터 테스트 | FILTER | ⚠️ | 1002ms | Checks: 0/1 verified | +| 14 | [READ] 결제 상세 조회 | READ | ✅ | 312ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 15 | 결제 상세 정보 확인 | - | ⚠️ | 1005ms | Detail checks: 0/4 matched | +| 16 | 목록으로 돌아가기 | - | ✅ | 312ms | Clicked (existed): button:has-text('목록'), button:has-text('뒤로'), [class*='back'] | +| 17 | 필수 검증 #1: 엑셀 다운로드 | - | ✅ | 3ms | Element not present (ok): button:has-text('엑셀'), button:has-text('Excel'), butto | +| 18 | 합계 금액 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/payment-history | diff --git a/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_22-27-11.md b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_22-27-11.md new file mode 100644 index 0000000..e7957e9 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-03_22-27-11.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 결제내역 테스트 + +**테스트 ID**: accounting-payment | **실행**: 2026-03-03_22-27-11 | **결과**: PASS +**소요 시간**: 13.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 결제내역 | - | ✅ | 2523ms | 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 | 결제내역 페이지 구조 확인 | - | ⚠️ | 1014ms | Checks: 0/4 verified | +| 6 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 2ms | 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 | ✅ | 2ms | 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 | ⚠️ | 1011ms | Detail checks: 0/2 matched | +| 12 | [FILTER] 결제방법 필터 테스트 | FILTER | ✅ | 4ms | Element not present (ok): select[name*='method'], button:has-text('결제방법'), [clas | +| 13 | [FILTER] 상태 필터 테스트 | FILTER | ⚠️ | 1029ms | Checks: 0/1 verified | +| 14 | [READ] 결제 상세 조회 | READ | ✅ | 301ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 15 | 결제 상세 정보 확인 | - | ⚠️ | 1017ms | Detail checks: 0/4 matched | +| 16 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), button:has-text('뒤로'), [class*='back'] | +| 17 | 필수 검증 #1: 엑셀 다운로드 | - | ✅ | 4ms | Element not present (ok): button:has-text('엑셀'), button:has-text('Excel'), butto | +| 18 | 합계 금액 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/payment-history | diff --git a/e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_10-12-09.md b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_10-12-09.md new file mode 100644 index 0000000..5754b35 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_10-12-09.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 결제내역 테스트 + +**테스트 ID**: accounting-payment | **실행**: 2026-03-04_10-12-09 | **결과**: PASS +**소요 시간**: 13.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 결제내역 | - | ✅ | 2507ms | Menu navigation: 회계관리 > 결제내역 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/payment-history | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 0 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 28 "... is not valid JSON/raw:Stats: 28 | +| 5 | 결제내역 페이지 구조 확인 | - | ⚠️ | 1011ms | Checks: 0/4 verified | +| 6 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 2ms | 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 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 11 | [READ] 결제 데이터 표시 확인 | READ | ⚠️ | 1007ms | Detail checks: 0/2 matched | +| 12 | [FILTER] 결제방법 필터 테스트 | FILTER | ✅ | 1ms | Element not present (ok): select[name*='method'], button:has-text('결제방법'), [clas | +| 13 | [FILTER] 상태 필터 테스트 | FILTER | ⚠️ | 1012ms | Checks: 0/1 verified | +| 14 | [READ] 결제 상세 조회 | READ | ✅ | 305ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 15 | 결제 상세 정보 확인 | - | ⚠️ | 1009ms | Detail checks: 0/4 matched | +| 16 | 목록으로 돌아가기 | - | ✅ | 304ms | Clicked (existed): button:has-text('목록'), button:has-text('뒤로'), [class*='back'] | +| 17 | 필수 검증 #1: 엑셀 다운로드 | - | ✅ | 4ms | Element not present (ok): button:has-text('엑셀'), button:has-text('Excel'), butto | +| 18 | 합계 금액 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/payment-history | diff --git a/e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_22-45-25.md b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_22-45-25.md new file mode 100644 index 0000000..dd896db --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-payment_2026-03-04_22-45-25.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 결제내역 테스트 + +**테스트 ID**: accounting-payment | **실행**: 2026-03-04_22-45-25 | **결과**: PASS +**소요 시간**: 15.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 결제내역 | - | ✅ | 2513ms | Menu navigation: 회계관리 > 결제내역 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/payment-history | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 0 inputs, 51 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 28 "... is not valid JSON/raw:Stats: 28 | +| 5 | 결제내역 페이지 구조 확인 | - | ⚠️ | 1519ms | Checks: 0/4 verified | +| 6 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 1ms | Element not present (ok): input[type='date']:first-of-type, input[name*='start'] | +| 7 | [FILTER] 기간 필터 - 종료일 | FILTER | ✅ | 0ms | 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 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 11 | [READ] 결제 데이터 표시 확인 | READ | ⚠️ | 1503ms | Detail checks: 0/2 matched | +| 12 | [FILTER] 결제방법 필터 테스트 | FILTER | ✅ | 4ms | Element not present (ok): select[name*='method'], button:has-text('결제방법'), [clas | +| 13 | [FILTER] 상태 필터 테스트 | FILTER | ⚠️ | 1511ms | Checks: 0/1 verified | +| 14 | [READ] 결제 상세 조회 | READ | ✅ | 315ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 15 | 결제 상세 정보 확인 | - | ⚠️ | 1503ms | Detail checks: 0/4 matched | +| 16 | 목록으로 돌아가기 | - | ✅ | 314ms | 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/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_15-30-10.md b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_15-30-10.md new file mode 100644 index 0000000..6595cda --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_15-30-10.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매입관리 테스트 + +**테스트 ID**: accounting-purchase | **실행**: 2026-03-03_15-30-10 | **결과**: PASS +**소요 시간**: 13.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매입관리 | - | ✅ | 2506ms | Menu navigation: 회계관리 > 매입관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 9 cards found" is not valid JSON/raw:Sta | +| 4 | 매입 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 1 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 | ✅ | 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 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1011ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 305ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매입 상세 보기 | READ | ✅ | 314ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1003ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 317ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매입 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1027ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1018ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_21-27-12.md b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_21-27-12.md new file mode 100644 index 0000000..84a8ece --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_21-27-12.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매입관리 테스트 + +**테스트 ID**: accounting-purchase | **실행**: 2026-03-03_21-27-12 | **결과**: PASS +**소요 시간**: 13.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매입관리 | - | ✅ | 2506ms | Menu navigation: 회계관리 > 매입관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 9 cards found" is not valid JSON/raw:Sta | +| 4 | 매입 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 1 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 | ✅ | 2ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1013ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 315ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매입 상세 보기 | READ | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1009ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 311ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매입 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1006ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1014ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 63ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_22-27-24.md b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_22-27-24.md new file mode 100644 index 0000000..7da1cca --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-03_22-27-24.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매입관리 테스트 + +**테스트 ID**: accounting-purchase | **실행**: 2026-03-03_22-27-24 | **결과**: PASS +**소요 시간**: 13.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매입관리 | - | ✅ | 2527ms | Menu navigation: 회계관리 > 매입관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 9 cards found" is not valid JSON/raw:Sta | +| 4 | 매입 테이블 구조 확인 | - | ✅ | 1ms | Table: 11 cols, 1 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 | ✅ | 2ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 2ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1009ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 319ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매입 상세 보기 | READ | ✅ | 307ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1009ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 320ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매입 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1025ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1004ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 58ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_10-12-22.md b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_10-12-22.md new file mode 100644 index 0000000..3861c38 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_10-12-22.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매입관리 테스트 + +**테스트 ID**: accounting-purchase | **실행**: 2026-03-04_10-12-22 | **결과**: PASS +**소요 시간**: 13.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매입관리 | - | ✅ | 2517ms | Menu navigation: 회계관리 > 매입관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 45 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 9 cards found" is not valid JSON/raw:Sta | +| 4 | 매입 테이블 구조 확인 | - | ✅ | 1ms | Table: 11 cols, 1 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 | ✅ | 1ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1018ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 312ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매입 상세 보기 | READ | ✅ | 312ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1010ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 312ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매입 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1021ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1026ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 90ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_22-45-37.md b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_22-45-37.md new file mode 100644 index 0000000..a3a40f1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-purchase_2026-03-04_22-45-37.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 매입관리 테스트 + +**테스트 ID**: accounting-purchase | **실행**: 2026-03-04_22-45-37 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 14 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매입관리 | - | ✅ | 2510ms | Menu navigation: 회계관리 > 매입관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 9 cards found" is not valid JSON/raw:Sta | +| 4 | 매입 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 1 rows | +| 5 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 6 | 매입 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 7 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 2ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 2ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1506ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 312ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매입 상세 보기 | READ | ✅ | 306ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1511ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 303ms | 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 | 108ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/purchase | diff --git a/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_15-30-22.md b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_15-30-22.md new file mode 100644 index 0000000..239757f --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_15-30-22.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 미수금현황 테스트 + +**테스트 ID**: accounting-receivable | **실행**: 2026-03-03_15-30-22 | **결과**: PASS +**소요 시간**: 11.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 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: 125 inputs, 212 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 4ms | json_fail:Unexpected token 'S', "Stats: 377"... is not valid JSON/raw:Stats: 377 | +| 5 | 미수금 테이블 구조 확인 | - | ✅ | 0ms | Table: 15 cols, 310 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 2/3 verified | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 830ms | json_fail:Unexpected token 'F', "Filter inp"... is not valid JSON/raw:Filter inp | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1014ms | Detail checks: 0/0 matched | +| 10 | [SEARCH] 거래처 검색 | SEARCH | ✅ | 309ms | Clicked (existed): input[placeholder*='검색'], input[placeholder*='거래처'] | +| 11 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1005ms | Detail checks: 0/0 matched | +| 12 | [READ] 미수금 상세 클릭 | READ | ✅ | 309ms | Clicked (existed): table tbody tr:first-child | +| 13 | [READ] 상세 정보 확인 | READ | ⚠️ | 1013ms | Detail checks: 0/3 matched | +| 14 | [READ] 목록으로 복귀 | READ | ✅ | 10ms | Element not present (ok): button:has-text('목록'), button:has-text('목록으로'), button | +| 15 | [EXPORT] 엑셀 다운로드 버튼 확인 | EXPORT | ✅ | 1ms | Checks: 1/1 verified | +| 16 | [EXPORT] 필수 검증 #1: 엑셀 다운로드 | EXPORT | ✅ | 316ms | Clicked (existed): button:has-text('엑셀'), button:has-text('다운로드'), button:has-te | +| 17 | [SORT] 컬럼 정렬 테스트 | SORT | ✅ | 20ms | Element not present (ok): th:has-text('미수금액'), th:has-text('미수금'), th:has-text(' | +| 18 | 연체 현황 탭 확인 | - | ✅ | 315ms | Clicked (existed): button:has-text('연체'), [role='tab']:has-text('연체') | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 501ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/receivables-status | diff --git a/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_21-27-24.md b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_21-27-24.md new file mode 100644 index 0000000..5cc176b --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_21-27-24.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 미수금현황 테스트 + +**테스트 ID**: accounting-receivable | **실행**: 2026-03-03_21-27-24 | **결과**: PASS +**소요 시간**: 11.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 미수금현황 | - | ✅ | 514ms | Menu navigation: 회계관리 > 미수금현황 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/receivables-status | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 127 inputs, 215 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 383"... is not valid JSON/raw:Stats: 383 | +| 5 | 미수금 테이블 구조 확인 | - | ✅ | 1ms | Table: 15 cols, 315 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | 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 | ⚠️ | 1013ms | Detail checks: 0/0 matched | +| 10 | [SEARCH] 거래처 검색 | SEARCH | ✅ | 341ms | Clicked (existed): input[placeholder*='검색'], input[placeholder*='거래처'] | +| 11 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1021ms | Detail checks: 0/0 matched | +| 12 | [READ] 미수금 상세 클릭 | READ | ✅ | 306ms | Clicked (existed): table tbody tr:first-child | +| 13 | [READ] 상세 정보 확인 | READ | ⚠️ | 1016ms | Detail checks: 0/3 matched | +| 14 | [READ] 목록으로 복귀 | READ | ✅ | 8ms | Element not present (ok): button:has-text('목록'), button:has-text('목록으로'), button | +| 15 | [EXPORT] 엑셀 다운로드 버튼 확인 | EXPORT | ✅ | 0ms | Checks: 1/1 verified | +| 16 | [EXPORT] 필수 검증 #1: 엑셀 다운로드 | EXPORT | ✅ | 311ms | Clicked (existed): button:has-text('엑셀'), button:has-text('다운로드'), button:has-te | +| 17 | [SORT] 컬럼 정렬 테스트 | SORT | ✅ | 19ms | Element not present (ok): th:has-text('미수금액'), th:has-text('미수금'), th:has-text(' | +| 18 | 연체 현황 탭 확인 | - | ✅ | 313ms | Clicked (existed): button:has-text('연체'), [role='tab']:has-text('연체') | +| 19 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 492ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/receivables-status | diff --git a/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_22-27-36.md b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_22-27-36.md new file mode 100644 index 0000000..0bb1ef8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-03_22-27-36.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 미수금현황 테스트 + +**테스트 ID**: accounting-receivable | **실행**: 2026-03-03_22-27-36 | **결과**: PASS +**소요 시간**: 11.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 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: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 129 inputs, 218 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 389"... is not valid JSON/raw:Stats: 389 | +| 5 | 미수금 테이블 구조 확인 | - | ✅ | 1ms | Table: 15 cols, 320 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 2/3 verified | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 819ms | json_fail:Unexpected token 'F', "Filter inp"... is not valid JSON/raw:Filter inp | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1010ms | Detail checks: 0/0 matched | +| 10 | [SEARCH] 거래처 검색 | SEARCH | ✅ | 312ms | Clicked (existed): input[placeholder*='검색'], input[placeholder*='거래처'] | +| 11 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1017ms | Detail checks: 0/0 matched | +| 12 | [READ] 미수금 상세 클릭 | READ | ✅ | 306ms | Clicked (existed): table tbody tr:first-child | +| 13 | [READ] 상세 정보 확인 | READ | ⚠️ | 1030ms | Detail checks: 0/3 matched | +| 14 | [READ] 목록으로 복귀 | READ | ✅ | 8ms | Element not present (ok): button:has-text('목록'), button:has-text('목록으로'), button | +| 15 | [EXPORT] 엑셀 다운로드 버튼 확인 | EXPORT | ✅ | 1ms | Checks: 1/1 verified | +| 16 | [EXPORT] 필수 검증 #1: 엑셀 다운로드 | EXPORT | ✅ | 322ms | Clicked (existed): button:has-text('엑셀'), button:has-text('다운로드'), button:has-te | +| 17 | [SORT] 컬럼 정렬 테스트 | SORT | ✅ | 7ms | Element not present (ok): th:has-text('미수금액'), th:has-text('미수금'), th:has-text(' | +| 18 | 연체 현황 탭 확인 | - | ✅ | 308ms | Clicked (existed): button:has-text('연체'), [role='tab']:has-text('연체') | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 533ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/receivables-status | diff --git a/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_10-12-34.md b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_10-12-34.md new file mode 100644 index 0000000..f163456 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_10-12-34.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 미수금현황 테스트 + +**테스트 ID**: accounting-receivable | **실행**: 2026-03-04_10-12-34 | **결과**: PASS +**소요 시간**: 11.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 미수금현황 | - | ✅ | 515ms | Menu navigation: 회계관리 > 미수금현황 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/receivables-status | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 131 inputs, 221 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 395"... is not valid JSON/raw:Stats: 395 | +| 5 | 미수금 테이블 구조 확인 | - | ✅ | 1ms | Table: 15 cols, 325 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 1ms | Checks: 2/3 verified | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 814ms | json_fail:Unexpected token 'F', "Filter inp"... is not valid JSON/raw:Filter inp | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1007ms | Detail checks: 0/0 matched | +| 10 | [SEARCH] 거래처 검색 | SEARCH | ✅ | 312ms | Clicked (existed): input[placeholder*='검색'], input[placeholder*='거래처'] | +| 11 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1034ms | Detail checks: 0/0 matched | +| 12 | [READ] 미수금 상세 클릭 | READ | ✅ | 311ms | Clicked (existed): table tbody tr:first-child | +| 13 | [READ] 상세 정보 확인 | READ | ⚠️ | 1009ms | Detail checks: 0/3 matched | +| 14 | [READ] 목록으로 복귀 | READ | ✅ | 7ms | Element not present (ok): button:has-text('목록'), button:has-text('목록으로'), button | +| 15 | [EXPORT] 엑셀 다운로드 버튼 확인 | EXPORT | ✅ | 0ms | Checks: 1/1 verified | +| 16 | [EXPORT] 필수 검증 #1: 엑셀 다운로드 | EXPORT | ✅ | 315ms | Clicked (existed): button:has-text('엑셀'), button:has-text('다운로드'), button:has-te | +| 17 | [SORT] 컬럼 정렬 테스트 | SORT | ✅ | 24ms | Element not present (ok): th:has-text('미수금액'), th:has-text('미수금'), th:has-text(' | +| 18 | 연체 현황 탭 확인 | - | ✅ | 318ms | Clicked (existed): button:has-text('연체'), [role='tab']:has-text('연체') | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 516ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/receivables-status | diff --git a/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_22-45-51.md b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_22-45-51.md new file mode 100644 index 0000000..49e9b16 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-receivable_2026-03-04_22-45-51.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 미수금현황 테스트 + +**테스트 ID**: accounting-receivable | **실행**: 2026-03-04_22-45-51 | **결과**: PASS +**소요 시간**: 13.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 16 | 0 | 3 | 84% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 미수금현황 | - | ✅ | 518ms | Menu navigation: 회계관리 > 미수금현황 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/receivables-status | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 4ms | Real page: 133 inputs, 224 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 4ms | json_fail:Unexpected token 'S', "Stats: 401"... is not valid JSON/raw:Stats: 401 | +| 5 | 미수금 테이블 구조 확인 | - | ✅ | 1ms | Table: 15 cols, 330 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 2" is not valid JSON/raw:Filters | +| 7 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 2/3 verified | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 813ms | json_fail:Unexpected token 'F', "Filter inp"... is not valid JSON/raw:Filter inp | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1512ms | Detail checks: 0/0 matched | +| 10 | [SEARCH] 거래처 검색 | SEARCH | ✅ | 317ms | Clicked (existed): input[placeholder*='검색'], input[placeholder*='거래처'] | +| 11 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1505ms | Detail checks: 0/0 matched | +| 12 | [READ] 미수금 상세 클릭 | READ | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 13 | [READ] 상세 정보 확인 | READ | ⚠️ | 1520ms | Detail checks: 0/3 matched | +| 14 | [READ] 목록으로 복귀 | READ | ✅ | 13ms | Element not present (ok): button:has-text('목록'), button:has-text('목록으로'), button | +| 15 | [EXPORT] 엑셀 다운로드 버튼 확인 | EXPORT | ✅ | 0ms | Checks: 1/1 verified | +| 16 | [EXPORT] 필수 검증 #1: 엑셀 다운로드 | EXPORT | ✅ | 315ms | Clicked (existed): button:has-text('엑셀'), button:has-text('다운로드'), button:has-te | +| 17 | [SORT] 컬럼 정렬 테스트 | SORT | ✅ | 12ms | Element not present (ok): th:has-text('미수금액'), th:has-text('미수금'), th:has-text(' | +| 18 | 연체 현황 탭 확인 | - | ✅ | 305ms | Clicked (existed): button:has-text('연체'), [role='tab']:has-text('연체') | +| 19 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 525ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/receivables-status | diff --git a/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_15-30-35.md b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_15-30-35.md new file mode 100644 index 0000000..c6a698a --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_15-30-35.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매출관리 테스트 + +**테스트 ID**: accounting-sales | **실행**: 2026-03-03_15-30-35 | **결과**: PASS +**소요 시간**: 13.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매출관리 | - | ✅ | 2529ms | Menu navigation: 회계관리 > 매출관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 1 inputs, 205 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 127"... is not valid JSON/raw:Stats: 127 | +| 4 | 매출 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 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 | ✅ | 3ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 2ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1022ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 313ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매출 상세 보기 | READ | ✅ | 325ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1012ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 306ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매출 합계 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1012ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1005ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 4ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_21-27-38.md b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_21-27-38.md new file mode 100644 index 0000000..a2c971a --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_21-27-38.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매출관리 테스트 + +**테스트 ID**: accounting-sales | **실행**: 2026-03-03_21-27-38 | **결과**: PASS +**소요 시간**: 13.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매출관리 | - | ✅ | 2515ms | Menu navigation: 회계관리 > 매출관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 205 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 127"... is not valid JSON/raw:Stats: 127 | +| 4 | 매출 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 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 | ✅ | 3ms | 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 | ⚠️ | 1011ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 313ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매출 상세 보기 | READ | ✅ | 309ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1009ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 319ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매출 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1026ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1007ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_22-27-50.md b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_22-27-50.md new file mode 100644 index 0000000..7dfd618 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-03_22-27-50.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매출관리 테스트 + +**테스트 ID**: accounting-sales | **실행**: 2026-03-03_22-27-50 | **결과**: PASS +**소요 시간**: 13.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매출관리 | - | ✅ | 2531ms | Menu navigation: 회계관리 > 매출관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 3ms | Real page: 1 inputs, 205 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 4ms | json_fail:Unexpected token 'S', "Stats: 127"... is not valid JSON/raw:Stats: 127 | +| 4 | 매출 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 20 rows | +| 5 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 6 | 매출 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 7 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 3ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 5ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 316ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매출 상세 보기 | READ | ✅ | 312ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1005ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매출 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1018ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1017ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 5ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_10-12-48.md b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_10-12-48.md new file mode 100644 index 0000000..bb8c2c3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_10-12-48.md @@ -0,0 +1,42 @@ +# ✅ E2E 테스트 성공: 매출관리 테스트 + +**테스트 ID**: accounting-sales | **실행**: 2026-03-04_10-12-48 | **결과**: PASS +**소요 시간**: 13.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 18 | 14 | 0 | 4 | 78% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매출관리 | - | ✅ | 2517ms | 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: 11 cols, 20 rows | +| 5 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 6 | 매출 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 7 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 3ms | 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 | ⚠️ | 1007ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 313ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매출 상세 보기 | READ | ✅ | 317ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1017ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 360ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 14 | 매출 합계 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 15 | 엑셀 다운로드 버튼 확인 | - | ⚠️ | 1013ms | Checks: 0/1 verified | +| 16 | 인쇄 버튼 확인 | - | ⚠️ | 1026ms | Checks: 0/1 verified | +| 17 | 페이지네이션 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 18 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 125ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_22-46-03.md b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_22-46-03.md new file mode 100644 index 0000000..9e49f05 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-sales_2026-03-04_22-46-03.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 매출관리 테스트 + +**테스트 ID**: accounting-sales | **실행**: 2026-03-04_22-46-03 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 14 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 매출관리 | - | ✅ | 2523ms | Menu navigation: 회계관리 > 매출관리 | +| 2 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 1 inputs, 205 buttons | +| 3 | 통계 카드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'S', "Stats: 127"... is not valid JSON/raw:Stats: 127 | +| 4 | 매출 테이블 구조 확인 | - | ✅ | 0ms | Table: 11 cols, 20 rows | +| 5 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 5" is not valid JSON/raw:Filters | +| 6 | 매출 통계 카드 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 7 | [FILTER] 기간 필터 - 시작일 | FILTER | ✅ | 4ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 8 | [FILTER] 기간 필터 적용 | FILTER | ✅ | 5ms | Element not present (ok): button:has-text('조회'), button:has-text('검색'), button:h | +| 9 | [FILTER] 필터 결과 확인 | FILTER | ⚠️ | 1518ms | Detail checks: 0/1 matched | +| 10 | [FILTER] 거래처별 필터 | FILTER | ✅ | 319ms | Clicked (existed): select[name*='vendor'], button:has-text('거래처') | +| 11 | [READ] 매출 상세 보기 | READ | ✅ | 318ms | Clicked (existed): table tbody tr:first-child | +| 12 | 상세 정보 확인 | - | ⚠️ | 1510ms | Detail checks: 0/3 matched | +| 13 | 목록으로 돌아가기 | - | ✅ | 307ms | 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 | 71ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_15-30-46.md b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_15-30-46.md new file mode 100644 index 0000000..3e2f648 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_15-30-46.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서발행 테스트 + +**테스트 ID**: accounting-tax-issue | **실행**: 2026-03-03_15-30-46 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서발행 | - | ✅ | 514ms | Menu navigation: 회계관리 > 세금계산서발행 | +| 2 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 1 inputs, 33 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 1 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 1ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 0ms | 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 | 상세 행 클릭 | - | ✅ | 302ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoice-issuance | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_21-27-49.md b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_21-27-49.md new file mode 100644 index 0000000..7b28c37 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_21-27-49.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서발행 테스트 + +**테스트 ID**: accounting-tax-issue | **실행**: 2026-03-03_21-27-49 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서발행 | - | ✅ | 521ms | Menu navigation: 회계관리 > 세금계산서발행 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 33 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 1ms | Table: 10 cols, 1 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 1ms | 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 | 상세 행 클릭 | - | ✅ | 308ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1018ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoice-issuance | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_22-28-01.md b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_22-28-01.md new file mode 100644 index 0000000..30ab45c --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-03_22-28-01.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서발행 테스트 + +**테스트 ID**: accounting-tax-issue | **실행**: 2026-03-03_22-28-01 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서발행 | - | ✅ | 509ms | Menu navigation: 회계관리 > 세금계산서발행 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | 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 | ✅ | 1ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 0ms | 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 | 상세 행 클릭 | - | ✅ | 316ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoice-issuance | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_10-12-59.md b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_10-12-59.md new file mode 100644 index 0000000..9f97dc5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_10-12-59.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서발행 테스트 + +**테스트 ID**: accounting-tax-issue | **실행**: 2026-03-04_10-12-59 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서발행 | - | ✅ | 503ms | Menu navigation: 회계관리 > 세금계산서발행 | +| 2 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 2ms | Real page: 1 inputs, 33 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 1ms | Table: 10 cols, 1 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 0ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 0ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | 발행 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'I', "Issue button: 새로 발행" is not valid JSON/raw:Issu | +| 10 | 상세 행 클릭 | - | ✅ | 307ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1014ms | 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/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_22-46-15.md b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_22-46-15.md new file mode 100644 index 0000000..736acb3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-issue_2026-03-04_22-46-15.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서발행 테스트 + +**테스트 ID**: accounting-tax-issue | **실행**: 2026-03-04_22-46-15 | **결과**: PASS +**소요 시간**: 11.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서발행 | - | ✅ | 515ms | Menu navigation: 회계관리 > 세금계산서발행 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 33 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 1 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 10 cols, 1 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 2ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 기간 필터 | FILTER | ✅ | 2ms | Element not present (ok): input[type='date']:first-of-type, [class*='datepicker' | +| 9 | 발행 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'I', "Issue button: 새로 발행" is not valid JSON/raw:Issu | +| 10 | 상세 행 클릭 | - | ✅ | 309ms | Clicked (existed): table tbody tr:first-child | +| 11 | 상세 정보 확인 | - | ⚠️ | 1503ms | Detail checks: 0/1 matched | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoice-issuance | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_15-30-57.md b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_15-30-57.md new file mode 100644 index 0000000..9db5e87 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_15-30-57.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서관리 테스트 + +**테스트 ID**: accounting-tax-mgmt | **실행**: 2026-03-03_15-30-57 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서관리 | - | ✅ | 516ms | Menu navigation: 회계관리 > 세금계산서관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 1ms | Table: 14 cols, 3 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 2ms | 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 | 상세 행 클릭 | - | ✅ | 316ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 11 | 엑셀 다운로드 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'E', "Excel butt"... is not valid JSON/raw:Excel butt | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoices | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_21-28-00.md b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_21-28-00.md new file mode 100644 index 0000000..99620ed --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_21-28-00.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서관리 테스트 + +**테스트 ID**: accounting-tax-mgmt | **실행**: 2026-03-03_21-28-00 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서관리 | - | ✅ | 508ms | Menu navigation: 회계관리 > 세금계산서관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 14 cols, 3 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 3ms | 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 | 상세 정보 확인 | - | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 11 | 엑셀 다운로드 버튼 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'E', "Excel butt"... is not valid JSON/raw:Excel butt | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoices | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_22-28-12.md b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_22-28-12.md new file mode 100644 index 0000000..638b113 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-03_22-28-12.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서관리 테스트 + +**테스트 ID**: accounting-tax-mgmt | **실행**: 2026-03-03_22-28-12 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서관리 | - | ✅ | 505ms | Menu navigation: 회계관리 > 세금계산서관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 14 cols, 3 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 3ms | Element not present (ok): input[type='search'], input[placeholder*='검색'], input[ | +| 8 | [FILTER] 필터 존재 확인 | FILTER | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters: 1" is not valid JSON/raw:Filters: 1 | +| 9 | 상세 행 클릭 | - | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1017ms | 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/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_10-13-10.md b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_10-13-10.md new file mode 100644 index 0000000..b1e46b6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_10-13-10.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서관리 테스트 + +**테스트 ID**: accounting-tax-mgmt | **실행**: 2026-03-04_10-13-10 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서관리 | - | ✅ | 508ms | Menu navigation: 회계관리 > 세금계산서관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 14 cols, 3 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 | 상세 행 클릭 | - | ✅ | 302ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | 엑셀 다운로드 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'E', "Excel butt"... is not valid JSON/raw:Excel butt | +| 12 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/tax-invoices | diff --git a/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_22-46-26.md b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_22-46-26.md new file mode 100644 index 0000000..bdfb525 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-tax-mgmt_2026-03-04_22-46-26.md @@ -0,0 +1,35 @@ +# ✅ E2E 테스트 성공: 세금계산서관리 테스트 + +**테스트 ID**: accounting-tax-mgmt | **실행**: 2026-03-04_22-46-26 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 11 | 10 | 0 | 1 | 91% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 세금계산서관리 | - | ✅ | 509ms | Menu navigation: 회계관리 > 세금계산서관리 | +| 2 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 3 rows | +| 5 | 세금계산서 테이블 구조 확인 | - | ✅ | 0ms | Table: 14 cols, 3 rows | +| 6 | [SEARCH] 검색 필드 확인 | SEARCH | ✅ | 2ms | 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 | 상세 행 클릭 | - | ✅ | 314ms | Clicked (existed): table tbody tr:first-child | +| 10 | 상세 정보 확인 | - | ⚠️ | 1512ms | Detail checks: 0/1 matched | +| 11 | 엑셀 다운로드 버튼 확인 | - | ✅ | 2ms | 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/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_15-31-17.md b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_15-31-17.md new file mode 100644 index 0000000..8dc2cdb --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_15-31-17.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 출금관리 테스트 + +**테스트 ID**: accounting-withdrawal | **실행**: 2026-03-03_15-31-17 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 출금관리 | - | ✅ | 2528ms | Menu navigation: 회계관리 > 출금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/withdrawals | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 5ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 출금 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 307ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 출금 등록 버튼 클릭 | CREATE | ✅ | 303ms | Clicked (existed): button:has-text('등록'), button:has-text('출금 등록'), button:has-t | +| 9 | [CREATE] 출금 정보 입력 | CREATE | ✅ | 497ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 314ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2519ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1005ms | Detail checks: 0/0 matched | +| 14 | [READ] 출금 상세 페이지 진입 | READ | ✅ | 3ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1013ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 311ms | 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 | ⚠️ | 2544ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1011ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1013ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 53ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/withdrawals | diff --git a/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_21-28-19.md b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_21-28-19.md new file mode 100644 index 0000000..c02fdc6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_21-28-19.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 출금관리 테스트 + +**테스트 ID**: accounting-withdrawal | **실행**: 2026-03-03_21-28-19 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 출금관리 | - | ✅ | 2521ms | Menu navigation: 회계관리 > 출금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/withdrawals | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 출금 테이블 구조 확인 | - | ✅ | 1ms | 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 | ✅ | 315ms | Clicked (existed): button:has-text('등록'), button:has-text('출금 등록'), button:has-t | +| 9 | [CREATE] 출금 정보 입력 | CREATE | ✅ | 500ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 318ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2532ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 1ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1001ms | Detail checks: 0/0 matched | +| 14 | [READ] 출금 상세 페이지 진입 | READ | ✅ | 3ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1013ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 316ms | Clicked (existed): input[name*='amount'], input[placeholder*='금액'] | +| 18 | [UPDATE] 메모 수정 | UPDATE | ✅ | 2ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 19 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 2ms | Element not present (ok): button:has-text('저장') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2529ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1017ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1014ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/withdrawals | diff --git a/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_22-28-31.md b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_22-28-31.md new file mode 100644 index 0000000..be38184 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-03_22-28-31.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 출금관리 테스트 + +**테스트 ID**: accounting-withdrawal | **실행**: 2026-03-03_22-28-31 | **결과**: PASS +**소요 시간**: 19.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 출금관리 | - | ✅ | 2529ms | Menu navigation: 회계관리 > 출금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/withdrawals | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 47 "... is not valid JSON/raw:Stats: 47 | +| 5 | 출금 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 6" is not valid JSON/raw:Filters | +| 7 | 검색 기능 테스트 | - | ✅ | 312ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 출금 등록 버튼 클릭 | CREATE | ✅ | 317ms | Clicked (existed): button:has-text('등록'), button:has-text('출금 등록'), button:has-t | +| 9 | [CREATE] 출금 정보 입력 | CREATE | ✅ | 483ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 316ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2537ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1016ms | Detail checks: 0/0 matched | +| 14 | [READ] 출금 상세 페이지 진입 | READ | ✅ | 2ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1015ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 1ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 313ms | 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 | ⚠️ | 2534ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1001ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 1ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1011ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 54ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/withdrawals | diff --git a/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_10-13-29.md b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_10-13-29.md new file mode 100644 index 0000000..60933b5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_10-13-29.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 출금관리 테스트 + +**테스트 ID**: accounting-withdrawal | **실행**: 2026-03-04_10-13-29 | **결과**: PASS +**소요 시간**: 19.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 출금관리 | - | ✅ | 2531ms | Menu navigation: 회계관리 > 출금관리 | +| 2 | URL 검증 | - | ✅ | 1ms | 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 | 검색 기능 테스트 | - | ✅ | 314ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 출금 등록 버튼 클릭 | CREATE | ✅ | 318ms | Clicked (existed): button:has-text('등록'), button:has-text('출금 등록'), button:has-t | +| 9 | [CREATE] 출금 정보 입력 | CREATE | ✅ | 473ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 307ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 2537ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1015ms | 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 | ⚠️ | 1014ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 303ms | Clicked (existed): input[name*='amount'], input[placeholder*='금액'] | +| 18 | [UPDATE] 메모 수정 | UPDATE | ✅ | 2ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 19 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('저장') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 2533ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1014ms | 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 | ⚠️ | 1017ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/withdrawals | diff --git a/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_22-46-49.md b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_22-46-49.md new file mode 100644 index 0000000..3df2393 --- /dev/null +++ b/e2e/results/hotfix/success/OK-accounting-withdrawal_2026-03-04_22-46-49.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 출금관리 테스트 + +**테스트 ID**: accounting-withdrawal | **실행**: 2026-03-04_22-46-49 | **결과**: PASS +**소요 시간**: 22.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 19 | 0 | 6 | 76% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 회계관리 > 출금관리 | - | ✅ | 2518ms | Menu navigation: 회계관리 > 출금관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/accounting/withdrawals | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 89 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | 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 | 검색 기능 테스트 | - | ✅ | 314ms | Clicked (existed): input[placeholder*='검색'] | +| 8 | [CREATE] 출금 등록 버튼 클릭 | CREATE | ✅ | 317ms | Clicked (existed): button:has-text('등록'), button:has-text('출금 등록'), button:has-t | +| 9 | [CREATE] 출금 정보 입력 | CREATE | ✅ | 498ms | fill_form: 3/3 filled | +| 10 | [CREATE] 필수 검증 #2: 등록 저장 | CREATE | ✅ | 306ms | Clicked (existed): button:has-text('저장'), button:has-text('등록') | +| 11 | [CREATE] 저장 완료 토스트 확인 | CREATE | ⚠️ | 3045ms | No toast/notification found | +| 12 | [CREATE] 모달 닫기 확인 | CREATE | ✅ | 0ms | No modal open | +| 13 | [CREATE] 등록 결과 확인 | CREATE | ⚠️ | 1515ms | Detail checks: 0/0 matched | +| 14 | [READ] 출금 상세 페이지 진입 | READ | ✅ | 0ms | Element not present (ok): table tbody tr:first-child, table tbody tr:nth-child(1 | +| 15 | [READ] 상세 정보 확인 | READ | ⚠️ | 1517ms | Detail checks: 0/3 matched | +| 16 | [UPDATE] 수정 모드 진입 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('수정') | +| 17 | [UPDATE] 금액 수정 | UPDATE | ✅ | 316ms | Clicked (existed): input[name*='amount'], input[placeholder*='금액'] | +| 18 | [UPDATE] 메모 수정 | UPDATE | ✅ | 3ms | Element not present (ok): textarea[name*='memo'], input[placeholder*='메모'] | +| 19 | [UPDATE] 필수 검증 #2: 수정 저장 | UPDATE | ✅ | 0ms | Element not present (ok): button:has-text('저장') | +| 20 | [UPDATE] 수정 완료 토스트 확인 | UPDATE | ⚠️ | 3034ms | No toast/notification found | +| 21 | [UPDATE] 수정 결과 확인 | UPDATE | ⚠️ | 1530ms | Detail checks: 0/2 matched | +| 22 | [DELETE] 삭제 버튼 클릭 | DELETE | ✅ | 0ms | Element not present (ok): button:has-text('삭제') | +| 23 | [DELETE] 필수 검증 #6: 삭제 확인 | DELETE | ✅ | 2ms | Element not present (ok): [role='alertdialog'] button:has-text('확인'), [role='dia | +| 24 | [DELETE] 삭제 결과 확인 | DELETE | ⚠️ | 1514ms | Detail checks: 0/0 matched | +| 25 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/withdrawals | diff --git a/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_15-32-03.md b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_15-32-03.md new file mode 100644 index 0000000..ac89f55 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_15-32-03.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 회계 + +**테스트 ID**: api-health-acc | **실행**: 2026-03-03_15-32-03 | **결과**: PASS +**소요 시간**: 46.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 2 | [회계관리 > 거래처관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | [회계관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [회계관리 > 어음관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 5 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 518ms | 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:88 | +| 9 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 2031ms | Menu navigation: 회계관리 > 입금관리 | +| 10 | [회계관리 > 입금관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 11 | [회계관리 > 입금관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [회계관리 > 출금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 13 | [회계관리 > 출금관리] 메뉴 이동 | - | ✅ | 2533ms | Menu navigation: 회계관리 > 출금관리 | +| 14 | [회계관리 > 출금관리] API 호출 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 15 | [회계관리 > 출금관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 59ms / PASS | +| 16 | [회계관리 > 매출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:94 | +| 17 | [회계관리 > 매출관리] 메뉴 이동 | - | ✅ | 519ms | Menu navigation: 회계관리 > 매출관리 | +| 18 | [회계관리 > 매출관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 19 | [회계관리 > 매출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [회계관리 > 매입관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:94 | +| 21 | [회계관리 > 매입관리] 메뉴 이동 | - | ✅ | 2529ms | Menu navigation: 회계관리 > 매입관리 | +| 22 | [회계관리 > 매입관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 23 | [회계관리 > 매입관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 88ms / PASS | +| 24 | [회계관리 > 악성채권관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 25 | [회계관리 > 악성채권관리] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 회계관리 > 악성채권관리 | +| 26 | [회계관리 > 악성채권관리] API 호출 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 27 | [회계관리 > 악성채권관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [회계관리 > 예상지출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 29 | [회계관리 > 예상지출관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 회계관리 > 예상지출관리 | +| 30 | [회계관리 > 예상지출관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 31 | [회계관리 > 예상지출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [회계관리 > 카드내역관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 33 | [회계관리 > 카드내역관리] 메뉴 이동 | - | ✅ | 525ms | Menu navigation: 회계관리 > 카드내역관리 | +| 34 | [회계관리 > 카드내역관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 35 | [회계관리 > 카드내역관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 36 | [회계관리 > 결제관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:6 perf:101 | +| 37 | [회계관리 > 결제관리] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 회계관리 > 결제관리 | +| 38 | [회계관리 > 결제관리] API 호출 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 39 | [회계관리 > 결제관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 78ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_21-29-05.md b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_21-29-05.md new file mode 100644 index 0000000..8e37664 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_21-29-05.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 회계 + +**테스트 ID**: api-health-acc | **실행**: 2026-03-03_21-29-05 | **결과**: PASS +**소요 시간**: 46.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:88 | +| 2 | [회계관리 > 거래처관리] API 호출 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 3 | [회계관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [회계관리 > 어음관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 5 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 527ms | Menu navigation: 회계관리 > 어음관리 | +| 6 | [회계관리 > 어음관리] API 호출 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 7 | [회계관리 > 어음관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [회계관리 > 입금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 9 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 2029ms | Menu navigation: 회계관리 > 입금관리 | +| 10 | [회계관리 > 입금관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 11 | [회계관리 > 입금관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [회계관리 > 출금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 13 | [회계관리 > 출금관리] 메뉴 이동 | - | ✅ | 2525ms | Menu navigation: 회계관리 > 출금관리 | +| 14 | [회계관리 > 출금관리] API 호출 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 15 | [회계관리 > 출금관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 53ms / PASS | +| 16 | [회계관리 > 매출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:94 | +| 17 | [회계관리 > 매출관리] 메뉴 이동 | - | ✅ | 526ms | Menu navigation: 회계관리 > 매출관리 | +| 18 | [회계관리 > 매출관리] API 호출 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 19 | [회계관리 > 매출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [회계관리 > 매입관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:94 | +| 21 | [회계관리 > 매입관리] 메뉴 이동 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 매입관리 | +| 22 | [회계관리 > 매입관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 23 | [회계관리 > 매입관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 75ms / PASS | +| 24 | [회계관리 > 악성채권관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 25 | [회계관리 > 악성채권관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 회계관리 > 악성채권관리 | +| 26 | [회계관리 > 악성채권관리] API 호출 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 27 | [회계관리 > 악성채권관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [회계관리 > 예상지출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 29 | [회계관리 > 예상지출관리] 메뉴 이동 | - | ✅ | 514ms | Menu navigation: 회계관리 > 예상지출관리 | +| 30 | [회계관리 > 예상지출관리] API 호출 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 31 | [회계관리 > 예상지출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [회계관리 > 카드내역관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 33 | [회계관리 > 카드내역관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 회계관리 > 카드내역관리 | +| 34 | [회계관리 > 카드내역관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 35 | [회계관리 > 카드내역관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 36 | [회계관리 > 결제관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 37 | [회계관리 > 결제관리] 메뉴 이동 | - | ✅ | 521ms | Menu navigation: 회계관리 > 결제관리 | +| 38 | [회계관리 > 결제관리] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 39 | [회계관리 > 결제관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_22-29-17.md b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_22-29-17.md new file mode 100644 index 0000000..b61a17d --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-03_22-29-17.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 회계 + +**테스트 ID**: api-health-acc | **실행**: 2026-03-03_22-29-17 | **결과**: PASS +**소요 시간**: 46.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:88 | +| 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:88 | +| 5 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 507ms | Menu navigation: 회계관리 > 어음관리 | +| 6 | [회계관리 > 어음관리] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 7 | [회계관리 > 어음관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [회계관리 > 입금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 9 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 2022ms | Menu navigation: 회계관리 > 입금관리 | +| 10 | [회계관리 > 입금관리] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 11 | [회계관리 > 입금관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [회계관리 > 출금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:88 | +| 13 | [회계관리 > 출금관리] 메뉴 이동 | - | ✅ | 2518ms | Menu navigation: 회계관리 > 출금관리 | +| 14 | [회계관리 > 출금관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 15 | [회계관리 > 출금관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 58ms / PASS | +| 16 | [회계관리 > 매출관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:2 perf:94 | +| 17 | [회계관리 > 매출관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 회계관리 > 매출관리 | +| 18 | [회계관리 > 매출관리] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 19 | [회계관리 > 매출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [회계관리 > 매입관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:94 | +| 21 | [회계관리 > 매입관리] 메뉴 이동 | - | ✅ | 2517ms | Menu navigation: 회계관리 > 매입관리 | +| 22 | [회계관리 > 매입관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 23 | [회계관리 > 매입관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 74ms / PASS | +| 24 | [회계관리 > 악성채권관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 25 | [회계관리 > 악성채권관리] 메뉴 이동 | - | ✅ | 526ms | Menu navigation: 회계관리 > 악성채권관리 | +| 26 | [회계관리 > 악성채권관리] API 호출 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 27 | [회계관리 > 악성채권관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [회계관리 > 예상지출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 29 | [회계관리 > 예상지출관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 회계관리 > 예상지출관리 | +| 30 | [회계관리 > 예상지출관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 31 | [회계관리 > 예상지출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [회계관리 > 카드내역관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 33 | [회계관리 > 카드내역관리] 메뉴 이동 | - | ✅ | 508ms | Menu navigation: 회계관리 > 카드내역관리 | +| 34 | [회계관리 > 카드내역관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 35 | [회계관리 > 카드내역관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 36 | [회계관리 > 결제관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:101 | +| 37 | [회계관리 > 결제관리] 메뉴 이동 | - | ✅ | 515ms | 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 | 69ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_10-14-15.md b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_10-14-15.md new file mode 100644 index 0000000..f688c1a --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_10-14-15.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 회계 + +**테스트 ID**: api-health-acc | **실행**: 2026-03-04_10-14-15 | **결과**: PASS +**소요 시간**: 46.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:86 | +| 2 | [회계관리 > 거래처관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 3 | [회계관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [회계관리 > 어음관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:86 | +| 5 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 505ms | Menu navigation: 회계관리 > 어음관리 | +| 6 | [회계관리 > 어음관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 7 | [회계관리 > 어음관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [회계관리 > 입금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:86 | +| 9 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 2022ms | Menu navigation: 회계관리 > 입금관리 | +| 10 | [회계관리 > 입금관리] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 11 | [회계관리 > 입금관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [회계관리 > 출금관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:86 | +| 13 | [회계관리 > 출금관리] 메뉴 이동 | - | ✅ | 2521ms | Menu navigation: 회계관리 > 출금관리 | +| 14 | [회계관리 > 출금관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 15 | [회계관리 > 출금관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 61ms / PASS | +| 16 | [회계관리 > 매출관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:2 perf:91 | +| 17 | [회계관리 > 매출관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 회계관리 > 매출관리 | +| 18 | [회계관리 > 매출관리] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 19 | [회계관리 > 매출관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [회계관리 > 매입관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:91 | +| 21 | [회계관리 > 매입관리] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 회계관리 > 매입관리 | +| 22 | [회계관리 > 매입관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 23 | [회계관리 > 매입관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 102ms / PASS | +| 24 | [회계관리 > 악성채권관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 25 | [회계관리 > 악성채권관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 회계관리 > 악성채권관리 | +| 26 | [회계관리 > 악성채권관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 27 | [회계관리 > 악성채권관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [회계관리 > 예상지출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 29 | [회계관리 > 예상지출관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 회계관리 > 예상지출관리 | +| 30 | [회계관리 > 예상지출관리] API 호출 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 31 | [회계관리 > 예상지출관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [회계관리 > 카드내역관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 33 | [회계관리 > 카드내역관리] 메뉴 이동 | - | ✅ | 516ms | Menu navigation: 회계관리 > 카드내역관리 | +| 34 | [회계관리 > 카드내역관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 35 | [회계관리 > 카드내역관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 36 | [회계관리 > 결제관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 37 | [회계관리 > 결제관리] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 회계관리 > 결제관리 | +| 38 | [회계관리 > 결제관리] API 호출 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 39 | [회계관리 > 결제관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 89ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_22-47-35.md b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_22-47-35.md new file mode 100644 index 0000000..2f81000 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-acc_2026-03-04_22-47-35.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 회계 + +**테스트 ID**: api-health-acc | **실행**: 2026-03-04_22-47-35 | **결과**: PASS +**소요 시간**: 46.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:86 | +| 2 | [회계관리 > 거래처관리] API 호출 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | [회계관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [회계관리 > 어음관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:86 | +| 5 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 회계관리 > 어음관리 | +| 6 | [회계관리 > 어음관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 7 | [회계관리 > 어음관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [회계관리 > 입금관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:86 | +| 9 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 2019ms | Menu navigation: 회계관리 > 입금관리 | +| 10 | [회계관리 > 입금관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 11 | [회계관리 > 입금관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [회계관리 > 출금관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:86 | +| 13 | [회계관리 > 출금관리] 메뉴 이동 | - | ✅ | 2515ms | Menu navigation: 회계관리 > 출금관리 | +| 14 | [회계관리 > 출금관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 15 | [회계관리 > 출금관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 54ms / PASS | +| 16 | [회계관리 > 매출관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:91 | +| 17 | [회계관리 > 매출관리] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 회계관리 > 매출관리 | +| 18 | [회계관리 > 매출관리] API 호출 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 19 | [회계관리 > 매출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [회계관리 > 매입관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:91 | +| 21 | [회계관리 > 매입관리] 메뉴 이동 | - | ✅ | 2518ms | Menu navigation: 회계관리 > 매입관리 | +| 22 | [회계관리 > 매입관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 23 | [회계관리 > 매입관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 75ms / PASS | +| 24 | [회계관리 > 악성채권관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 25 | [회계관리 > 악성채권관리] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 회계관리 > 악성채권관리 | +| 26 | [회계관리 > 악성채권관리] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 27 | [회계관리 > 악성채권관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [회계관리 > 예상지출관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:6 perf:97 | +| 29 | [회계관리 > 예상지출관리] 메뉴 이동 | - | ✅ | 509ms | Menu navigation: 회계관리 > 예상지출관리 | +| 30 | [회계관리 > 예상지출관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 31 | [회계관리 > 예상지출관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [회계관리 > 카드내역관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 33 | [회계관리 > 카드내역관리] 메뉴 이동 | - | ✅ | 516ms | Menu navigation: 회계관리 > 카드내역관리 | +| 34 | [회계관리 > 카드내역관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 35 | [회계관리 > 카드내역관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 36 | [회계관리 > 결제관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:97 | +| 37 | [회계관리 > 결제관리] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 회계관리 > 결제관리 | +| 38 | [회계관리 > 결제관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 39 | [회계관리 > 결제관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_15-32-50.md b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_15-32-50.md new file mode 100644 index 0000000..03817b5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_15-32-50.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 생산/기타 + +**테스트 ID**: api-health-prod-misc | **실행**: 2026-03-03_15-32-50 | **결과**: PASS +**소요 시간**: 46.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [생산관리 > 작업지시 관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 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:92 | +| 5 | [생산관리 > 작업실적] 메뉴 이동 | - | ✅ | 524ms | Menu navigation: 생산관리 > 작업실적 | +| 6 | [생산관리 > 작업실적] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 7 | [생산관리 > 작업실적] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [생산관리 > 품목관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 9 | [생산관리 > 품목관리] 메뉴 이동 | - | ✅ | 4027ms | Menu navigation: 생산관리 > 품목관리 | +| 10 | [생산관리 > 품목관리] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 11 | [생산관리 > 품목관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [생산관리 > 작업자 화면] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 13 | [생산관리 > 작업자 화면] 메뉴 이동 | - | ✅ | 2520ms | Menu navigation: 생산관리 > 작업자 화면 | +| 14 | [생산관리 > 작업자 화면] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 15 | [생산관리 > 작업자 화면] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 98ms / PASS | +| 16 | [품질관리 > 제품검사관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:104 | +| 17 | [품질관리 > 제품검사관리] 메뉴 이동 | - | ✅ | 519ms | Menu navigation: 품질관리 > 제품검사관리 | +| 18 | [품질관리 > 제품검사관리] API 호출 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 19 | [품질관리 > 제품검사관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [자재관리 > 입고관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:104 | +| 21 | [자재관리 > 입고관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 자재관리 > 입고관리 | +| 22 | [자재관리 > 입고관리] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 23 | [자재관리 > 입고관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 109ms / PASS | +| 24 | [자재관리 > 재고현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:106 | +| 25 | [자재관리 > 재고현황] 메뉴 이동 | - | ✅ | 2512ms | Menu navigation: 자재관리 > 재고현황 | +| 26 | [자재관리 > 재고현황] API 호출 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 27 | [자재관리 > 재고현황] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 110ms / PASS | +| 28 | [게시판 > 자유게시판] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:113 | +| 29 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 게시판 > 자유게시판 | +| 30 | [게시판 > 자유게시판] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 31 | [게시판 > 자유게시판] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [게시판 > 공지사항] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:113 | +| 33 | [게시판 > 공지사항] 메뉴 이동 | - | ✅ | 2536ms | Menu navigation: 게시판 > 공지사항 | +| 34 | [게시판 > 공지사항] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 35 | [게시판 > 공지사항] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 49ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 94ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_21-29-52.md b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_21-29-52.md new file mode 100644 index 0000000..8e2f964 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_21-29-52.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 생산/기타 + +**테스트 ID**: api-health-prod-misc | **실행**: 2026-03-03_21-29-52 | **결과**: PASS +**소요 시간**: 46.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [생산관리 > 작업지시 관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 2 | [생산관리 > 작업지시 관리] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 3 | [생산관리 > 작업지시 관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [생산관리 > 작업실적] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 5 | [생산관리 > 작업실적] 메뉴 이동 | - | ✅ | 525ms | Menu navigation: 생산관리 > 작업실적 | +| 6 | [생산관리 > 작업실적] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 7 | [생산관리 > 작업실적] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [생산관리 > 품목관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 9 | [생산관리 > 품목관리] 메뉴 이동 | - | ✅ | 4038ms | Menu navigation: 생산관리 > 품목관리 | +| 10 | [생산관리 > 품목관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 11 | [생산관리 > 품목관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [생산관리 > 작업자 화면] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 13 | [생산관리 > 작업자 화면] 메뉴 이동 | - | ✅ | 2533ms | Menu navigation: 생산관리 > 작업자 화면 | +| 14 | [생산관리 > 작업자 화면] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 15 | [생산관리 > 작업자 화면] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 73ms / PASS | +| 16 | [품질관리 > 제품검사관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:104 | +| 17 | [품질관리 > 제품검사관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 품질관리 > 제품검사관리 | +| 18 | [품질관리 > 제품검사관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 19 | [품질관리 > 제품검사관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [자재관리 > 입고관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:104 | +| 21 | [자재관리 > 입고관리] 메뉴 이동 | - | ✅ | 523ms | Menu navigation: 자재관리 > 입고관리 | +| 22 | [자재관리 > 입고관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 23 | [자재관리 > 입고관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 110ms / PASS | +| 24 | [자재관리 > 재고현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:106 | +| 25 | [자재관리 > 재고현황] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 자재관리 > 재고현황 | +| 26 | [자재관리 > 재고현황] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 27 | [자재관리 > 재고현황] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 111ms / PASS | +| 28 | [게시판 > 자유게시판] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:113 | +| 29 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 518ms | 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:113 | +| 33 | [게시판 > 공지사항] 메뉴 이동 | - | ✅ | 2512ms | Menu navigation: 게시판 > 공지사항 | +| 34 | [게시판 > 공지사항] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 35 | [게시판 > 공지사항] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 50ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_22-30-04.md b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_22-30-04.md new file mode 100644 index 0000000..04e9116 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-03_22-30-04.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 생산/기타 + +**테스트 ID**: api-health-prod-misc | **실행**: 2026-03-03_22-30-04 | **결과**: PASS +**소요 시간**: 46.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [생산관리 > 작업지시 관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 2 | [생산관리 > 작업지시 관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 3 | [생산관리 > 작업지시 관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [생산관리 > 작업실적] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 5 | [생산관리 > 작업실적] 메뉴 이동 | - | ✅ | 523ms | Menu navigation: 생산관리 > 작업실적 | +| 6 | [생산관리 > 작업실적] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 7 | [생산관리 > 작업실적] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [생산관리 > 품목관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 9 | [생산관리 > 품목관리] 메뉴 이동 | - | ✅ | 4038ms | Menu navigation: 생산관리 > 품목관리 | +| 10 | [생산관리 > 품목관리] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 11 | [생산관리 > 품목관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [생산관리 > 작업자 화면] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:92 | +| 13 | [생산관리 > 작업자 화면] 메뉴 이동 | - | ✅ | 2528ms | Menu navigation: 생산관리 > 작업자 화면 | +| 14 | [생산관리 > 작업자 화면] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 15 | [생산관리 > 작업자 화면] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 74ms / PASS | +| 16 | [품질관리 > 제품검사관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:104 | +| 17 | [품질관리 > 제품검사관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 품질관리 > 제품검사관리 | +| 18 | [품질관리 > 제품검사관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 19 | [품질관리 > 제품검사관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [자재관리 > 입고관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:104 | +| 21 | [자재관리 > 입고관리] 메뉴 이동 | - | ✅ | 523ms | Menu navigation: 자재관리 > 입고관리 | +| 22 | [자재관리 > 입고관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 23 | [자재관리 > 입고관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 115ms / PASS | +| 24 | [자재관리 > 재고현황] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:6 perf:106 | +| 25 | [자재관리 > 재고현황] 메뉴 이동 | - | ✅ | 2534ms | Menu navigation: 자재관리 > 재고현황 | +| 26 | [자재관리 > 재고현황] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 27 | [자재관리 > 재고현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 72ms / PASS | +| 28 | [게시판 > 자유게시판] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:9 perf:113 | +| 29 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 514ms | Menu navigation: 게시판 > 자유게시판 | +| 30 | [게시판 > 자유게시판] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 31 | [게시판 > 자유게시판] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [게시판 > 공지사항] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:113 | +| 33 | [게시판 > 공지사항] 메뉴 이동 | - | ✅ | 2523ms | Menu navigation: 게시판 > 공지사항 | +| 34 | [게시판 > 공지사항] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 35 | [게시판 > 공지사항] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 48ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 76ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_10-15-02.md b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_10-15-02.md new file mode 100644 index 0000000..7cc23bb --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_10-15-02.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 생산/기타 + +**테스트 ID**: api-health-prod-misc | **실행**: 2026-03-04_10-15-02 | **결과**: PASS +**소요 시간**: 46.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [생산관리 > 작업지시 관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 2 | [생산관리 > 작업지시 관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 3 | [생산관리 > 작업지시 관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [생산관리 > 작업실적] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 5 | [생산관리 > 작업실적] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 생산관리 > 작업실적 | +| 6 | [생산관리 > 작업실적] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 7 | [생산관리 > 작업실적] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [생산관리 > 품목관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 9 | [생산관리 > 품목관리] 메뉴 이동 | - | ✅ | 4037ms | Menu navigation: 생산관리 > 품목관리 | +| 10 | [생산관리 > 품목관리] API 호출 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 11 | [생산관리 > 품목관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [생산관리 > 작업자 화면] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 13 | [생산관리 > 작업자 화면] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 생산관리 > 작업자 화면 | +| 14 | [생산관리 > 작업자 화면] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 15 | [생산관리 > 작업자 화면] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 76ms / PASS | +| 16 | [품질관리 > 제품검사관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:4 perf:101 | +| 17 | [품질관리 > 제품검사관리] 메뉴 이동 | - | ✅ | 519ms | Menu navigation: 품질관리 > 제품검사관리 | +| 18 | [품질관리 > 제품검사관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 19 | [품질관리 > 제품검사관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [자재관리 > 입고관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:4 perf:101 | +| 21 | [자재관리 > 입고관리] 메뉴 이동 | - | ✅ | 509ms | Menu navigation: 자재관리 > 입고관리 | +| 22 | [자재관리 > 입고관리] API 호출 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 23 | [자재관리 > 입고관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 121ms / PASS | +| 24 | [자재관리 > 재고현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:103 | +| 25 | [자재관리 > 재고현황] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 자재관리 > 재고현황 | +| 26 | [자재관리 > 재고현황] API 호출 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 27 | [자재관리 > 재고현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 54ms / PASS | +| 28 | [게시판 > 자유게시판] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:109 | +| 29 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 505ms | 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:9 perf:109 | +| 33 | [게시판 > 공지사항] 메뉴 이동 | - | ✅ | 2534ms | Menu navigation: 게시판 > 공지사항 | +| 34 | [게시판 > 공지사항] API 호출 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 35 | [게시판 > 공지사항] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 99ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_22-48-22.md b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_22-48-22.md new file mode 100644 index 0000000..7b30b0d --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-prod-misc_2026-03-04_22-48-22.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 생산/기타 + +**테스트 ID**: api-health-prod-misc | **실행**: 2026-03-04_22-48-22 | **결과**: PASS +**소요 시간**: 46.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [생산관리 > 작업지시 관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 2 | [생산관리 > 작업지시 관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | [생산관리 > 작업지시 관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [생산관리 > 작업실적] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:90 | +| 5 | [생산관리 > 작업실적] 메뉴 이동 | - | ✅ | 514ms | Menu navigation: 생산관리 > 작업실적 | +| 6 | [생산관리 > 작업실적] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 7 | [생산관리 > 작업실적] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [생산관리 > 품목관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 9 | [생산관리 > 품목관리] 메뉴 이동 | - | ✅ | 4033ms | Menu navigation: 생산관리 > 품목관리 | +| 10 | [생산관리 > 품목관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 11 | [생산관리 > 품목관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [생산관리 > 작업자 화면] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:90 | +| 13 | [생산관리 > 작업자 화면] 메뉴 이동 | - | ✅ | 2527ms | Menu navigation: 생산관리 > 작업자 화면 | +| 14 | [생산관리 > 작업자 화면] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 15 | [생산관리 > 작업자 화면] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 74ms / PASS | +| 16 | [품질관리 > 제품검사관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:101 | +| 17 | [품질관리 > 제품검사관리] 메뉴 이동 | - | ✅ | 516ms | Menu navigation: 품질관리 > 제품검사관리 | +| 18 | [품질관리 > 제품검사관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 19 | [품질관리 > 제품검사관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [자재관리 > 입고관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:4 perf:101 | +| 21 | [자재관리 > 입고관리] 메뉴 이동 | - | ✅ | 513ms | Menu navigation: 자재관리 > 입고관리 | +| 22 | [자재관리 > 입고관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 23 | [자재관리 > 입고관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 107ms / PASS | +| 24 | [자재관리 > 재고현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:103 | +| 25 | [자재관리 > 재고현황] 메뉴 이동 | - | ✅ | 2511ms | Menu navigation: 자재관리 > 재고현황 | +| 26 | [자재관리 > 재고현황] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 27 | [자재관리 > 재고현황] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 56ms / PASS | +| 28 | [게시판 > 자유게시판] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:109 | +| 29 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 게시판 > 자유게시판 | +| 30 | [게시판 > 자유게시판] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 31 | [게시판 > 자유게시판] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 32 | [게시판 > 공지사항] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:9 perf:109 | +| 33 | [게시판 > 공지사항] 메뉴 이동 | - | ✅ | 2517ms | Menu navigation: 게시판 > 공지사항 | +| 34 | [게시판 > 공지사항] API 호출 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 35 | [게시판 > 공지사항] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 53ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 11 | 11 | 0 | 71ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/production/work-orders | diff --git a/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_15-33-37.md b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_15-33-37.md new file mode 100644 index 0000000..150f30a --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_15-33-37.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 판매/인사 + +**테스트 ID**: api-health-sales-hr | **실행**: 2026-03-03_15-33-37 | **결과**: PASS +**소요 시간**: 46.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 2 | [판매관리 > 거래처관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 3 | [판매관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [판매관리 > 수주관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 5 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 526ms | Menu navigation: 판매관리 > 수주관리 | +| 6 | [판매관리 > 수주관리] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 7 | [판매관리 > 수주관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [판매관리 > 견적관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 9 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 2021ms | Menu navigation: 판매관리 > 견적관리 | +| 10 | [판매관리 > 견적관리] API 호출 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 11 | [판매관리 > 견적관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [판매관리 > 단가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 13 | [판매관리 > 단가관리] 메뉴 이동 | - | ✅ | 2516ms | Menu navigation: 판매관리 > 단가관리 | +| 14 | [판매관리 > 단가관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 15 | [판매관리 > 단가관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 119ms / PASS | +| 16 | [인사관리 > 사원관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:96 | +| 17 | [인사관리 > 사원관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 인사관리 > 사원관리 | +| 18 | [인사관리 > 사원관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 19 | [인사관리 > 사원관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [인사관리 > 급여관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:96 | +| 21 | [인사관리 > 급여관리] 메뉴 이동 | - | ✅ | 2528ms | Menu navigation: 인사관리 > 급여관리 | +| 22 | [인사관리 > 급여관리] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 23 | [인사관리 > 급여관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 99ms / PASS | +| 24 | [인사관리 > 근태현황] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:6 perf:104 | +| 25 | [인사관리 > 근태현황] 메뉴 이동 | - | ✅ | 514ms | Menu navigation: 인사관리 > 근태현황 | +| 26 | [인사관리 > 근태현황] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 27 | [인사관리 > 근태현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [인사관리 > 휴가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:104 | +| 29 | [인사관리 > 휴가관리] 메뉴 이동 | - | ✅ | 2528ms | Menu navigation: 인사관리 > 휴가관리 | +| 30 | [인사관리 > 휴가관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 31 | [인사관리 > 휴가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 81ms / PASS | +| 32 | [인사관리 > 카드관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:10 perf:111 | +| 33 | [인사관리 > 카드관리] 메뉴 이동 | - | ✅ | 2506ms | Menu navigation: 인사관리 > 카드관리 | +| 34 | [인사관리 > 카드관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 35 | [인사관리 > 카드관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 153ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 109ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_21-30-39.md b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_21-30-39.md new file mode 100644 index 0000000..d8eb55d --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_21-30-39.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 판매/인사 + +**테스트 ID**: api-health-sales-hr | **실행**: 2026-03-03_21-30-39 | **결과**: PASS +**소요 시간**: 46.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 2 | [판매관리 > 거래처관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 3 | [판매관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [판매관리 > 수주관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:89 | +| 5 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 508ms | Menu navigation: 판매관리 > 수주관리 | +| 6 | [판매관리 > 수주관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 7 | [판매관리 > 수주관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [판매관리 > 견적관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 9 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 2025ms | Menu navigation: 판매관리 > 견적관리 | +| 10 | [판매관리 > 견적관리] API 호출 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 11 | [판매관리 > 견적관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [판매관리 > 단가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 13 | [판매관리 > 단가관리] 메뉴 이동 | - | ✅ | 2507ms | Menu navigation: 판매관리 > 단가관리 | +| 14 | [판매관리 > 단가관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 15 | [판매관리 > 단가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 78ms / PASS | +| 16 | [인사관리 > 사원관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:96 | +| 17 | [인사관리 > 사원관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 인사관리 > 사원관리 | +| 18 | [인사관리 > 사원관리] API 호출 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 19 | [인사관리 > 사원관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [인사관리 > 급여관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:96 | +| 21 | [인사관리 > 급여관리] 메뉴 이동 | - | ✅ | 2531ms | Menu navigation: 인사관리 > 급여관리 | +| 22 | [인사관리 > 급여관리] API 호출 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 23 | [인사관리 > 급여관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 75ms / PASS | +| 24 | [인사관리 > 근태현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:104 | +| 25 | [인사관리 > 근태현황] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 인사관리 > 근태현황 | +| 26 | [인사관리 > 근태현황] API 호출 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 27 | [인사관리 > 근태현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [인사관리 > 휴가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:104 | +| 29 | [인사관리 > 휴가관리] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 인사관리 > 휴가관리 | +| 30 | [인사관리 > 휴가관리] API 호출 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 31 | [인사관리 > 휴가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 64ms / PASS | +| 32 | [인사관리 > 카드관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:10 perf:111 | +| 33 | [인사관리 > 카드관리] 메뉴 이동 | - | ✅ | 2519ms | Menu navigation: 인사관리 > 카드관리 | +| 34 | [인사관리 > 카드관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 35 | [인사관리 > 카드관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 157ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 91ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_22-30-51.md b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_22-30-51.md new file mode 100644 index 0000000..5f53568 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-03_22-30-51.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 판매/인사 + +**테스트 ID**: api-health-sales-hr | **실행**: 2026-03-03_22-30-51 | **결과**: PASS +**소요 시간**: 46.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 2 | [판매관리 > 거래처관리] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 3 | [판매관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [판매관리 > 수주관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 5 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 519ms | Menu navigation: 판매관리 > 수주관리 | +| 6 | [판매관리 > 수주관리] API 호출 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 7 | [판매관리 > 수주관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [판매관리 > 견적관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:89 | +| 9 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 2020ms | 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:89 | +| 13 | [판매관리 > 단가관리] 메뉴 이동 | - | ✅ | 2513ms | Menu navigation: 판매관리 > 단가관리 | +| 14 | [판매관리 > 단가관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 15 | [판매관리 > 단가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 76ms / PASS | +| 16 | [인사관리 > 사원관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:96 | +| 17 | [인사관리 > 사원관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 인사관리 > 사원관리 | +| 18 | [인사관리 > 사원관리] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 19 | [인사관리 > 사원관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [인사관리 > 급여관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:2 perf:96 | +| 21 | [인사관리 > 급여관리] 메뉴 이동 | - | ✅ | 2518ms | Menu navigation: 인사관리 > 급여관리 | +| 22 | [인사관리 > 급여관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 23 | [인사관리 > 급여관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 73ms / PASS | +| 24 | [인사관리 > 근태현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:104 | +| 25 | [인사관리 > 근태현황] 메뉴 이동 | - | ✅ | 519ms | Menu navigation: 인사관리 > 근태현황 | +| 26 | [인사관리 > 근태현황] API 호출 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 27 | [인사관리 > 근태현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [인사관리 > 휴가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:104 | +| 29 | [인사관리 > 휴가관리] 메뉴 이동 | - | ✅ | 2534ms | Menu navigation: 인사관리 > 휴가관리 | +| 30 | [인사관리 > 휴가관리] API 호출 대기 | - | ✅ | 3001ms | 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:111 | +| 33 | [인사관리 > 카드관리] 메뉴 이동 | - | ✅ | 2527ms | Menu navigation: 인사관리 > 카드관리 | +| 34 | [인사관리 > 카드관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 35 | [인사관리 > 카드관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 156ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 87ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_10-15-49.md b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_10-15-49.md new file mode 100644 index 0000000..78debf3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_10-15-49.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 판매/인사 + +**테스트 ID**: api-health-sales-hr | **실행**: 2026-03-04_10-15-49 | **결과**: PASS +**소요 시간**: 46.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:87 | +| 2 | [판매관리 > 거래처관리] API 호출 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 3 | [판매관리 > 거래처관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 4 | [판매관리 > 수주관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:87 | +| 5 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 판매관리 > 수주관리 | +| 6 | [판매관리 > 수주관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 7 | [판매관리 > 수주관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [판매관리 > 견적관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:87 | +| 9 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 2025ms | Menu navigation: 판매관리 > 견적관리 | +| 10 | [판매관리 > 견적관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 11 | [판매관리 > 견적관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 12 | [판매관리 > 단가관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:0 perf:87 | +| 13 | [판매관리 > 단가관리] 메뉴 이동 | - | ✅ | 2517ms | Menu navigation: 판매관리 > 단가관리 | +| 14 | [판매관리 > 단가관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 15 | [판매관리 > 단가관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 76ms / PASS | +| 16 | [인사관리 > 사원관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:93 | +| 17 | [인사관리 > 사원관리] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 인사관리 > 사원관리 | +| 18 | [인사관리 > 사원관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 19 | [인사관리 > 사원관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [인사관리 > 급여관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:93 | +| 21 | [인사관리 > 급여관리] 메뉴 이동 | - | ✅ | 2516ms | Menu navigation: 인사관리 > 급여관리 | +| 22 | [인사관리 > 급여관리] API 호출 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 23 | [인사관리 > 급여관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 89ms / PASS | +| 24 | [인사관리 > 근태현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:100 | +| 25 | [인사관리 > 근태현황] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 인사관리 > 근태현황 | +| 26 | [인사관리 > 근태현황] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 27 | [인사관리 > 근태현황] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [인사관리 > 휴가관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:6 perf:100 | +| 29 | [인사관리 > 휴가관리] 메뉴 이동 | - | ✅ | 2516ms | Menu navigation: 인사관리 > 휴가관리 | +| 30 | [인사관리 > 휴가관리] API 호출 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 31 | [인사관리 > 휴가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 64ms / PASS | +| 32 | [인사관리 > 카드관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:10 perf:106 | +| 33 | [인사관리 > 카드관리] 메뉴 이동 | - | ✅ | 2533ms | Menu navigation: 인사관리 > 카드관리 | +| 34 | [인사관리 > 카드관리] API 호출 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 35 | [인사관리 > 카드관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 164ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 97ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_22-49-09.md b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_22-49-09.md new file mode 100644 index 0000000..f5e3949 --- /dev/null +++ b/e2e/results/hotfix/success/OK-api-health-sales-hr_2026-03-04_22-49-09.md @@ -0,0 +1,59 @@ +# ✅ E2E 테스트 성공: API 건강성 감사: 판매/인사 + +**테스트 ID**: api-health-sales-hr | **실행**: 2026-03-04_22-49-09 | **결과**: PASS +**소요 시간**: 46.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 35 | 35 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:87 | +| 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:87 | +| 5 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 판매관리 > 수주관리 | +| 6 | [판매관리 > 수주관리] API 호출 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 7 | [판매관리 > 수주관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 8 | [판매관리 > 견적관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:0 perf:87 | +| 9 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 2026ms | 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:87 | +| 13 | [판매관리 > 단가관리] 메뉴 이동 | - | ✅ | 2515ms | Menu navigation: 판매관리 > 단가관리 | +| 14 | [판매관리 > 단가관리] API 호출 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 15 | [판매관리 > 단가관리] API 건강성 감사 | API_AUDIT | ✅ | 2ms | API_AUDIT / grade:PASS / api:2 / 2개 API / 2OK 0err 0slow / avg 180ms / PASS | +| 16 | [인사관리 > 사원관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:2 perf:93 | +| 17 | [인사관리 > 사원관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 인사관리 > 사원관리 | +| 18 | [인사관리 > 사원관리] API 호출 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 19 | [인사관리 > 사원관리] API 건강성 감사 | API_AUDIT | ✅ | 0ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 20 | [인사관리 > 급여관리] 마커 기록 | MARK | ✅ | 1ms | MARK_START / apiLogs:2 perf:93 | +| 21 | [인사관리 > 급여관리] 메뉴 이동 | - | ✅ | 2531ms | Menu navigation: 인사관리 > 급여관리 | +| 22 | [인사관리 > 급여관리] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 23 | [인사관리 > 급여관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 99ms / PASS | +| 24 | [인사관리 > 근태현황] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:100 | +| 25 | [인사관리 > 근태현황] 메뉴 이동 | - | ✅ | 512ms | Menu navigation: 인사관리 > 근태현황 | +| 26 | [인사관리 > 근태현황] API 호출 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 27 | [인사관리 > 근태현황] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:0 / 리소스/API 호출 없음 (SPA 캐시) / PASS | +| 28 | [인사관리 > 휴가관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:6 perf:100 | +| 29 | [인사관리 > 휴가관리] 메뉴 이동 | - | ✅ | 2516ms | Menu navigation: 인사관리 > 휴가관리 | +| 30 | [인사관리 > 휴가관리] API 호출 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 31 | [인사관리 > 휴가관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:4 / 4개 API / 4OK 0err 0slow / avg 64ms / PASS | +| 32 | [인사관리 > 카드관리] 마커 기록 | MARK | ✅ | 0ms | MARK_START / apiLogs:10 perf:106 | +| 33 | [인사관리 > 카드관리] 메뉴 이동 | - | ✅ | 2518ms | Menu navigation: 인사관리 > 카드관리 | +| 34 | [인사관리 > 카드관리] API 호출 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 35 | [인사관리 > 카드관리] API 건강성 감사 | API_AUDIT | ✅ | 1ms | API_AUDIT / grade:PASS / api:3 / 3개 API / 3OK 0err 0slow / avg 73ms / PASS | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 94ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-approval-box_2026-03-03_14-39-07.md b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_14-39-07.md new file mode 100644 index 0000000..1bf9ed3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_14-39-07.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-03_14-39-07 | **결과**: PASS +**소요 시간**: 25.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2323ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2535ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/inbox | +| 4 | 404 에러 감지 | - | ✅ | 1001ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 6 | 통계 카드 확인 | - | ✅ | 3ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1013ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 1ms | Table: 9 cols, 15 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 1ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1511ms | json_fail:Unexpected token 'P', "PASS: Deta"... is not valid JSON/raw:PASS: Deta | +| 12 | PDF 다운로드 전 모달 상태 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: No m"... is not valid JSON/raw:WARN: No m | +| 13 | 필수 검증: PDF 다운로드 실행 | - | ⚠️ | 1013ms | evaluate error: Failed to execute 'querySelector' on 'Document': 'button:has-tex | +| 14 | PDF 파일 유효성 + content-type 검증 | VERIFY | ✅ | 0ms | 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 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1503ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1512ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 15건 존재 / rows:15 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1505ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2015ms | json_fail:Unexpected token 'P', "PASS: Docu"... is not valid JSON/raw:PASS: Docu | +| 21 | [REJECT] 반려 버튼 클릭 + 사유 입력 | REJECT | ✅ | 1327ms | REJECT_WITH_REASON / WARN: reason textarea not found | +| 22 | [REJECT] 결재반려 탭 이동 + 반려 문서 확인 | VERIFY | ✅ | 1506ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 6건 존재 / rows:6 | +| 23 | 검색 기능 테스트 | - | ✅ | 516ms | 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=0 success=0 failed=0 avg=0ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 84ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/e2e/results/hotfix/success/OK-approval-box_2026-03-03_15-34-03.md b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_15-34-03.md new file mode 100644 index 0000000..9cf30cf --- /dev/null +++ b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_15-34-03.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-03_15-34-03 | **결과**: PASS +**소요 시간**: 25.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2304ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2534ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/approval/inbox | +| 4 | 404 에러 감지 | - | ✅ | 1000ms | 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 | 통계 카드 확인 | - | ✅ | 2ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1035ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 1ms | Table: 9 cols, 15 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 1ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1508ms | json_fail:Unexpected token 'P', "PASS: Deta"... is not valid JSON/raw:PASS: Deta | +| 12 | PDF 다운로드 전 모달 상태 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: No m"... is not valid JSON/raw:WARN: No m | +| 13 | 필수 검증: PDF 다운로드 실행 | - | ⚠️ | 1016ms | 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 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1515ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1514ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 15건 존재 / rows:15 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1504ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2015ms | json_fail:Unexpected token 'P', "PASS: Docu"... is not valid JSON/raw:PASS: Docu | +| 21 | [REJECT] 반려 버튼 클릭 + 사유 입력 | REJECT | ✅ | 1316ms | REJECT_WITH_REASON / WARN: reason textarea not found | +| 22 | [REJECT] 결재반려 탭 이동 + 반려 문서 확인 | VERIFY | ✅ | 1502ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 6건 존재 / rows:6 | +| 23 | 검색 기능 테스트 | - | ✅ | 521ms | 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=0 success=0 failed=0 avg=0ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/e2e/results/hotfix/success/OK-approval-box_2026-03-03_21-31-05.md b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_21-31-05.md new file mode 100644 index 0000000..0e180cc --- /dev/null +++ b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_21-31-05.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-03_21-31-05 | **결과**: PASS +**소요 시간**: 25.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2314ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2536ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/inbox | +| 4 | 404 에러 감지 | - | ✅ | 1003ms | 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 | 통계 카드 확인 | - | ✅ | 2ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1019ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 0ms | Table: 9 cols, 15 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 1ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1511ms | 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 다운로드 실행 | - | ⚠️ | 1018ms | 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 스타일 수동 확인 체크리스트 | - | ✅ | 1ms | json_fail:Unexpected token 'M', "Manual che"... is not valid JSON/raw:Manual che | +| 16 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1511ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1510ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 15건 존재 / rows:15 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1509ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2016ms | json_fail:Unexpected token 'P', "PASS: Docu"... is not valid JSON/raw:PASS: Docu | +| 21 | [REJECT] 반려 버튼 클릭 + 사유 입력 | REJECT | ✅ | 1317ms | REJECT_WITH_REASON / WARN: reason textarea not found | +| 22 | [REJECT] 결재반려 탭 이동 + 반려 문서 확인 | VERIFY | ✅ | 1516ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 6건 존재 / rows:6 | +| 23 | 검색 기능 테스트 | - | ✅ | 521ms | json_fail:Unexpected token 'S', "Search tes"... is not valid JSON/raw:Search tes | +| 24 | [VERIFY] 콘솔 에러 확인 | VERIFY | ✅ | 1ms | CONSOLE_CHECK / pass: 0 JS console errors | +| 25 | [VERIFY] API 호출 요약 | VERIFY | ✅ | 1ms | API_SUMMARY / API total=0 success=0 failed=0 avg=0ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/e2e/results/hotfix/success/OK-approval-box_2026-03-03_22-31-16.md b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_22-31-16.md new file mode 100644 index 0000000..bf76823 --- /dev/null +++ b/e2e/results/hotfix/success/OK-approval-box_2026-03-03_22-31-16.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-03_22-31-16 | **결과**: PASS +**소요 시간**: 25.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2323ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2521ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/inbox | +| 4 | 404 에러 감지 | - | ✅ | 1017ms | 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 | 통계 카드 확인 | - | ✅ | 3ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1016ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 1ms | Table: 9 cols, 15 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 1ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1509ms | json_fail:Unexpected token 'P', "PASS: Deta"... is not valid JSON/raw:PASS: Deta | +| 12 | PDF 다운로드 전 모달 상태 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: No m"... is not valid JSON/raw:WARN: No m | +| 13 | 필수 검증: PDF 다운로드 실행 | - | ⚠️ | 1016ms | 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 스타일 수동 확인 체크리스트 | - | ✅ | 1ms | json_fail:Unexpected token 'M', "Manual che"... is not valid JSON/raw:Manual che | +| 16 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1514ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1514ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 15건 존재 / rows:15 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1505ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2024ms | json_fail:Unexpected token 'P', "PASS: Docu"... is not valid JSON/raw:PASS: Docu | +| 21 | [REJECT] 반려 버튼 클릭 + 사유 입력 | REJECT | ✅ | 1322ms | REJECT_WITH_REASON / WARN: reason textarea not found | +| 22 | [REJECT] 결재반려 탭 이동 + 반려 문서 확인 | VERIFY | ✅ | 1504ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 6건 존재 / rows:6 | +| 23 | 검색 기능 테스트 | - | ✅ | 513ms | json_fail:Unexpected token 'S', "Search tes"... is not valid JSON/raw:Search tes | +| 24 | [VERIFY] 콘솔 에러 확인 | VERIFY | ✅ | 1ms | CONSOLE_CHECK / pass: 0 JS console errors | +| 25 | [VERIFY] API 호출 요약 | VERIFY | ✅ | 0ms | API_SUMMARY / API total=0 success=0 failed=0 avg=0ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/e2e/results/hotfix/success/OK-approval-box_2026-03-04_10-16-14.md b/e2e/results/hotfix/success/OK-approval-box_2026-03-04_10-16-14.md new file mode 100644 index 0000000..da38845 --- /dev/null +++ b/e2e/results/hotfix/success/OK-approval-box_2026-03-04_10-16-14.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-04_10-16-14 | **결과**: PASS +**소요 시간**: 25.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2311ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2515ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/inbox | +| 4 | 404 에러 감지 | - | ✅ | 1017ms | 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 | 통계 카드 확인 | - | ✅ | 1ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1027ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 0ms | Table: 9 cols, 15 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 1ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1504ms | 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 다운로드 실행 | - | ⚠️ | 1016ms | 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 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1511ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1503ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 15건 존재 / rows:15 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1514ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2017ms | 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 | ✅ | 1517ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 6건 존재 / rows:6 | +| 23 | 검색 기능 테스트 | - | ✅ | 533ms | json_fail:Unexpected token 'S', "Search tes"... is not valid JSON/raw:Search tes | +| 24 | [VERIFY] 콘솔 에러 확인 | VERIFY | ✅ | 1ms | CONSOLE_CHECK / pass: 0 JS console errors | +| 25 | [VERIFY] API 호출 요약 | VERIFY | ✅ | 1ms | API_SUMMARY / API total=6 success=6 failed=0 avg=92ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 92ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/e2e/results/hotfix/success/OK-approval-box_2026-03-04_22-49-35.md b/e2e/results/hotfix/success/OK-approval-box_2026-03-04_22-49-35.md new file mode 100644 index 0000000..42c84df --- /dev/null +++ b/e2e/results/hotfix/success/OK-approval-box_2026-03-04_22-49-35.md @@ -0,0 +1,49 @@ +# ✅ E2E 테스트 성공: 결재함 E2E 테스트 + +**테스트 ID**: approval-box | **실행**: 2026-03-04_22-49-35 | **결과**: PASS +**소요 시간**: 26.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 25 | 23 | 0 | 2 | 92% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2318ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 2 | 결재관리 > 결재함 메뉴 진입 | - | ✅ | 2523ms | Menu navigation: 결재관리 > 결재함 | +| 3 | 메뉴 도착 확인 | - | ✅ | 1ms | 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 | 페이지 정상 로드 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 6 | 통계 카드 확인 | - | ✅ | 1ms | Element exists: [class*='card'], [class*='stat'] | +| 7 | 탭 구조 확인 | - | ⚠️ | 1512ms | Element not found: [role='tab'], button[role='tab'] | +| 8 | 테이블 데이터 확인 | - | ✅ | 1ms | Table: 9 cols, 15 rows | +| 9 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 10 | [APPROVAL] 탭 카운트 캡처 (승인 전 기준) | APPROVAL | ✅ | 1ms | TAB_COUNT_BEFORE | +| 11 | 필수 검증: 결재 문서 상세 보기 | - | ✅ | 1514ms | 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 다운로드 실행 | - | ⚠️ | 1507ms | 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 스타일 수동 확인 체크리스트 | - | ✅ | 1ms | json_fail:Unexpected token 'M', "Manual che"... is not valid JSON/raw:Manual che | +| 16 | 필수 검증: 결재 승인 실제 수행 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "WARN: Appr"... is not valid JSON/raw:WARN: Appr | +| 17 | [APPROVAL] 승인 후 탭 카운트 변화 검증 | VERIFY | ✅ | 1505ms | TAB_COUNT_AFTER_APPROVE / pass: pending 0->0 / pass: completed 0->0 | +| 18 | [APPROVAL] 결재완료 탭 이동 + 승인 문서 확인 | VERIFY | ✅ | 1501ms | STATE_TRANSITION_APPROVE / pass: 결재완료 탭에 15건 존재 / rows:15 | +| 19 | [APPROVAL] 승인 후 결재 버튼 비활성 확인 | VERIFY | ✅ | 1515ms | APPROVE_BTN_DISABLED / warn: approve button still active on completed document | +| 20 | [REJECT] 미결재 탭 이동 + 문서 선택 | REJECT | ✅ | 2019ms | json_fail:Unexpected token 'P', "PASS: Docu"... is not valid JSON/raw:PASS: Docu | +| 21 | [REJECT] 반려 버튼 클릭 + 사유 입력 | REJECT | ✅ | 1321ms | REJECT_WITH_REASON / WARN: reason textarea not found | +| 22 | [REJECT] 결재반려 탭 이동 + 반려 문서 확인 | VERIFY | ✅ | 1511ms | STATE_TRANSITION_REJECT / pass: 결재반려 탭에 6건 존재 / rows:6 | +| 23 | 검색 기능 테스트 | - | ✅ | 514ms | json_fail:Unexpected token 'S', "Search tes"... is not valid JSON/raw:Search tes | +| 24 | [VERIFY] 콘솔 에러 확인 | VERIFY | ✅ | 1ms | CONSOLE_CHECK / pass: 0 JS console errors | +| 25 | [VERIFY] API 호출 요약 | VERIFY | ✅ | 1ms | API_SUMMARY / API total=6 success=6 failed=0 avg=92ms slow=0 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 92ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/inbox | diff --git a/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_14-58-06.md b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_14-58-06.md new file mode 100644 index 0000000..4184a93 --- /dev/null +++ b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_14-58-06.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-03_14-58-06 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 17 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | Geolocation API 모킹 (권한 팝업 방지) | - | ✅ | 302ms | evaluate ok | +| 2 | 브라우저 위치 권한 팝업 클릭 (좌측 상단) | - | ✅ | 2017ms | evaluate ok | +| 3 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2313ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 4 | 1차 메뉴 찾기: 인사관리 (스크롤 포함) | - | ✅ | 523ms | Menu navigation: 인사관리 > 근태현황 | +| 5 | 2차 메뉴 도착 확인 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 6 | 404 에러 감지 | - | ✅ | 1012ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 7 | 페이지 정상 로드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 8 | 브라우저 위치 권한 설정 | - | ✅ | 1ms | json_fail:Unexpected token 'G', "Geolocatio"... is not valid JSON/raw:Geolocatio | +| 9 | 위치 정보 로딩 대기 | - | ✅ | 3ms | Found: region[name='지도'], [class*='map'], canvas, iframe[src*='map'] | +| 10 | 사용자 정보 확인 | - | ✅ | 1ms | Element exists: body | +| 11 | 출근 상태 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'o', "not_checked_in" is not valid JSON/raw:not_check | +| 12 | 출근하기 (미출근 상태인 경우) | - | ✅ | 308ms | Clicked (existed): 출근하기 | +| 13 | 출근 완료 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 14 | 퇴근하기 버튼 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 15 | 퇴근하기 (선택적) | - | ✅ | 317ms | Clicked (existed): 퇴근하기 | +| 16 | 최종 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 17 | 콘솔 에러 확인 | - | ✅ | 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/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_15-34-15.md b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_15-34-15.md new file mode 100644 index 0000000..6ebebad --- /dev/null +++ b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_15-34-15.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-03_15-34-15 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 17 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | Geolocation API 모킹 (권한 팝업 방지) | - | ✅ | 310ms | evaluate ok | +| 2 | 브라우저 위치 권한 팝업 클릭 (좌측 상단) | - | ✅ | 2015ms | evaluate ok | +| 3 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2306ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 4 | 1차 메뉴 찾기: 인사관리 (스크롤 포함) | - | ✅ | 513ms | Menu navigation: 인사관리 > 근태현황 | +| 5 | 2차 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 6 | 404 에러 감지 | - | ✅ | 1002ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 7 | 페이지 정상 로드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 8 | 브라우저 위치 권한 설정 | - | ✅ | 1ms | json_fail:Unexpected token 'G', "Geolocatio"... is not valid JSON/raw:Geolocatio | +| 9 | 위치 정보 로딩 대기 | - | ✅ | 3ms | Found: region[name='지도'], [class*='map'], canvas, iframe[src*='map'] | +| 10 | 사용자 정보 확인 | - | ✅ | 1ms | Element exists: body | +| 11 | 출근 상태 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'o', "not_checked_in" is not valid JSON/raw:not_check | +| 12 | 출근하기 (미출근 상태인 경우) | - | ✅ | 305ms | Clicked (existed): 출근하기 | +| 13 | 출근 완료 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 14 | 퇴근하기 버튼 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 15 | 퇴근하기 (선택적) | - | ✅ | 303ms | Clicked (existed): 퇴근하기 | +| 16 | 최종 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | 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/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_21-31-17.md b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_21-31-17.md new file mode 100644 index 0000000..9ad5278 --- /dev/null +++ b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_21-31-17.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-03_21-31-17 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 17 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | Geolocation API 모킹 (권한 팝업 방지) | - | ✅ | 314ms | evaluate ok | +| 2 | 브라우저 위치 권한 팝업 클릭 (좌측 상단) | - | ✅ | 2019ms | evaluate ok | +| 3 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2316ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 4 | 1차 메뉴 찾기: 인사관리 (스크롤 포함) | - | ✅ | 522ms | Menu navigation: 인사관리 > 근태현황 | +| 5 | 2차 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 6 | 404 에러 감지 | - | ✅ | 1010ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 7 | 페이지 정상 로드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 8 | 브라우저 위치 권한 설정 | - | ✅ | 0ms | json_fail:Unexpected token 'G', "Geolocatio"... is not valid JSON/raw:Geolocatio | +| 9 | 위치 정보 로딩 대기 | - | ✅ | 2ms | Found: region[name='지도'], [class*='map'], canvas, iframe[src*='map'] | +| 10 | 사용자 정보 확인 | - | ✅ | 1ms | Element exists: body | +| 11 | 출근 상태 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'o', "not_checked_in" is not valid JSON/raw:not_check | +| 12 | 출근하기 (미출근 상태인 경우) | - | ✅ | 314ms | Clicked (existed): 출근하기 | +| 13 | 출근 완료 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 14 | 퇴근하기 버튼 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 15 | 퇴근하기 (선택적) | - | ✅ | 305ms | Clicked (existed): 퇴근하기 | +| 16 | 최종 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | 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/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_22-31-29.md b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_22-31-29.md new file mode 100644 index 0000000..0901960 --- /dev/null +++ b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-03_22-31-29.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-03_22-31-29 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 17 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | Geolocation API 모킹 (권한 팝업 방지) | - | ✅ | 313ms | evaluate ok | +| 2 | 브라우저 위치 권한 팝업 클릭 (좌측 상단) | - | ✅ | 2024ms | evaluate ok | +| 3 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2311ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 4 | 1차 메뉴 찾기: 인사관리 (스크롤 포함) | - | ✅ | 518ms | Menu navigation: 인사관리 > 근태현황 | +| 5 | 2차 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 6 | 404 에러 감지 | - | ✅ | 1013ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 7 | 페이지 정상 로드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 8 | 브라우저 위치 권한 설정 | - | ✅ | 0ms | json_fail:Unexpected token 'G', "Geolocatio"... is not valid JSON/raw:Geolocatio | +| 9 | 위치 정보 로딩 대기 | - | ✅ | 3ms | Found: region[name='지도'], [class*='map'], canvas, iframe[src*='map'] | +| 10 | 사용자 정보 확인 | - | ✅ | 1ms | Element exists: body | +| 11 | 출근 상태 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'o', "not_checked_in" is not valid JSON/raw:not_check | +| 12 | 출근하기 (미출근 상태인 경우) | - | ✅ | 312ms | Clicked (existed): 출근하기 | +| 13 | 출근 완료 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 14 | 퇴근하기 버튼 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 15 | 퇴근하기 (선택적) | - | ✅ | 315ms | Clicked (existed): 퇴근하기 | +| 16 | 최종 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | 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/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_10-16-27.md b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_10-16-27.md new file mode 100644 index 0000000..19d8e02 --- /dev/null +++ b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_10-16-27.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-04_10-16-27 | **결과**: PASS +**소요 시간**: 12.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 17 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | Geolocation API 모킹 (권한 팝업 방지) | - | ✅ | 306ms | evaluate ok | +| 2 | 브라우저 위치 권한 팝업 클릭 (좌측 상단) | - | ✅ | 2015ms | evaluate ok | +| 3 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2314ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 4 | 1차 메뉴 찾기: 인사관리 (스크롤 포함) | - | ✅ | 518ms | Menu navigation: 인사관리 > 근태현황 | +| 5 | 2차 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 6 | 404 에러 감지 | - | ✅ | 1005ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 7 | 페이지 정상 로드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 8 | 브라우저 위치 권한 설정 | - | ✅ | 1ms | json_fail:Unexpected token 'G', "Geolocatio"... is not valid JSON/raw:Geolocatio | +| 9 | 위치 정보 로딩 대기 | - | ✅ | 1ms | Found: region[name='지도'], [class*='map'], canvas, iframe[src*='map'] | +| 10 | 사용자 정보 확인 | - | ✅ | 0ms | Element exists: body | +| 11 | 출근 상태 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'o', "not_checked_in" is not valid JSON/raw:not_check | +| 12 | 출근하기 (미출근 상태인 경우) | - | ✅ | 305ms | Clicked (existed): 출근하기 | +| 13 | 출근 완료 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 14 | 퇴근하기 버튼 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 15 | 퇴근하기 (선택적) | - | ✅ | 3ms | Element not present (ok): 퇴근하기 | +| 16 | 최종 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 17 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 95ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance | + +### 콘솔 에러 (Health Check) +1. `[GoogleMap] GPS 오류 코드: 1 메시지: User denied Geolocation` +2. `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` +3. `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/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_22-49-47.md b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_22-49-47.md new file mode 100644 index 0000000..97ad79f --- /dev/null +++ b/e2e/results/hotfix/success/OK-attendance-checkin_2026-03-04_22-49-47.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 근태현황 출퇴근 테스트 + +**테스트 ID**: attendance-checkin | **실행**: 2026-03-04_22-49-47 | **결과**: PASS +**소요 시간**: 12.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 17 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | Geolocation API 모킹 (권한 팝업 방지) | - | ✅ | 311ms | evaluate ok | +| 2 | 브라우저 위치 권한 팝업 클릭 (좌측 상단) | - | ✅ | 2008ms | evaluate ok | +| 3 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2311ms | json_fail:Unexpected token 'M', "Menu expanded" is not valid JSON/raw:Menu expan | +| 4 | 1차 메뉴 찾기: 인사관리 (스크롤 포함) | - | ✅ | 521ms | Menu navigation: 인사관리 > 근태현황 | +| 5 | 2차 메뉴 도착 확인 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/attendance | +| 6 | 404 에러 감지 | - | ✅ | 1005ms | json_fail:Unexpected token 'P', "PASS: No 404 error" is not valid JSON/raw:PASS: | +| 7 | 페이지 정상 로드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'P', "PASS: Page"... is not valid JSON/raw:PASS: Page | +| 8 | 브라우저 위치 권한 설정 | - | ✅ | 1ms | json_fail:Unexpected token 'G', "Geolocatio"... is not valid JSON/raw:Geolocatio | +| 9 | 위치 정보 로딩 대기 | - | ✅ | 0ms | Found: region[name='지도'], [class*='map'], canvas, iframe[src*='map'] | +| 10 | 사용자 정보 확인 | - | ✅ | 0ms | Element exists: body | +| 11 | 출근 상태 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'c', "checked_in" is not valid JSON/raw:checked_in | +| 12 | 출근하기 (미출근 상태인 경우) | - | ✅ | 4ms | Element not present (ok): 출근하기 | +| 13 | 출근 완료 상태 확인 | - | ✅ | 1ms | Element exists: body | +| 14 | 퇴근하기 버튼 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 15 | 퇴근하기 (선택적) | - | ✅ | 310ms | Clicked (existed): 퇴근하기 | +| 16 | 최종 상태 확인 | - | ✅ | 0ms | Element exists: body | +| 17 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 1 | 1 | 0 | 92ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance | + +### 콘솔 에러 (Health Check) +1. `[GoogleMap] GPS 오류 코드: 1 메시지: User denied Geolocation` +2. `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` +3. `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/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_15-35-52.md b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_15-35-52.md new file mode 100644 index 0000000..08ccbec --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_15-35-52.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 어음관리 + +**테스트 ID**: batch-create-acc-bills | **실행**: 2026-03-03_15-35-52 | **결과**: PASS +**소요 시간**: 96.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 4 | [회계관리 > 어음관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 9966ms | CREATE_1 | +| 5 | [회계관리 > 어음관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2017ms | Waited 2000ms | +| 6 | [회계관리 > 어음관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 7 | [회계관리 > 어음관리] [CREATE #1] 목록 안정화 | - | ✅ | 1519ms | Waited 1500ms | +| 8 | [회계관리 > 어음관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 9896ms | CREATE_2 | +| 9 | [회계관리 > 어음관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 10 | [회계관리 > 어음관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [CREATE #2] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 12 | [회계관리 > 어음관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 9918ms | CREATE_3 | +| 13 | [회계관리 > 어음관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 15 | [회계관리 > 어음관리] [CREATE #3] 목록 안정화 | - | ✅ | 1509ms | Waited 1500ms | +| 16 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 18 | [회계관리 > 어음관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1006ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 어음관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 8035ms | DELETE_1 | +| 20 | [회계관리 > 어음관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 21 | [회계관리 > 어음관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 어음관리] [DELETE #1] 목록 안정화 | - | ✅ | 1510ms | Waited 1500ms | +| 101 | [회계관리 > 어음관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 102 | [회계관리 > 어음관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1019ms | Waited 1000ms | +| 103 | [회계관리 > 어음관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 어음관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 8033ms | DELETE_2 | +| 24 | [회계관리 > 어음관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 25 | [회계관리 > 어음관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [회계관리 > 어음관리] [DELETE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 104 | [회계관리 > 어음관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 105 | [회계관리 > 어음관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 106 | [회계관리 > 어음관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 27 | [회계관리 > 어음관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 8017ms | DELETE_3 | +| 28 | [회계관리 > 어음관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 29 | [회계관리 > 어음관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 어음관리] [DELETE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 31 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 어음관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1009ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_21-32-54.md b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_21-32-54.md new file mode 100644 index 0000000..a44498a --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_21-32-54.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 어음관리 + +**테스트 ID**: batch-create-acc-bills | **실행**: 2026-03-03_21-32-54 | **결과**: PASS +**소요 시간**: 96.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] ts 초기화 | - | ✅ | 1ms | evaluate ok | +| 3 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 어음관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 9967ms | CREATE_1 | +| 5 | [회계관리 > 어음관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 6 | [회계관리 > 어음관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 7 | [회계관리 > 어음관리] [CREATE #1] 목록 안정화 | - | ✅ | 1505ms | Waited 1500ms | +| 8 | [회계관리 > 어음관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 9916ms | CREATE_2 | +| 9 | [회계관리 > 어음관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2017ms | Waited 2000ms | +| 10 | [회계관리 > 어음관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [CREATE #2] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 12 | [회계관리 > 어음관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 9918ms | CREATE_3 | +| 13 | [회계관리 > 어음관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 15 | [회계관리 > 어음관리] [CREATE #3] 목록 안정화 | - | ✅ | 1511ms | Waited 1500ms | +| 16 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 18 | [회계관리 > 어음관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1015ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 어음관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 8032ms | DELETE_1 | +| 20 | [회계관리 > 어음관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 21 | [회계관리 > 어음관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 22 | [회계관리 > 어음관리] [DELETE #1] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | +| 101 | [회계관리 > 어음관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 102 | [회계관리 > 어음관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 103 | [회계관리 > 어음관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 어음관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 8029ms | DELETE_2 | +| 24 | [회계관리 > 어음관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 25 | [회계관리 > 어음관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [회계관리 > 어음관리] [DELETE #2] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | +| 104 | [회계관리 > 어음관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 105 | [회계관리 > 어음관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 106 | [회계관리 > 어음관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 27 | [회계관리 > 어음관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 8035ms | DELETE_3 | +| 28 | [회계관리 > 어음관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2001ms | 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: 20 rows | +| 33 | [회계관리 > 어음관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1004ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_22-33-05.md b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_22-33-05.md new file mode 100644 index 0000000..d7fd8e8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-03_22-33-05.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 어음관리 + +**테스트 ID**: batch-create-acc-bills | **실행**: 2026-03-03_22-33-05 | **결과**: PASS +**소요 시간**: 96.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 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 | ✅ | 9880ms | CREATE_1 | +| 5 | [회계관리 > 어음관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 6 | [회계관리 > 어음관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 7 | [회계관리 > 어음관리] [CREATE #1] 목록 안정화 | - | ✅ | 1505ms | Waited 1500ms | +| 8 | [회계관리 > 어음관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 9893ms | CREATE_2 | +| 9 | [회계관리 > 어음관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 10 | [회계관리 > 어음관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [CREATE #2] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 12 | [회계관리 > 어음관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 9900ms | CREATE_3 | +| 13 | [회계관리 > 어음관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 15 | [회계관리 > 어음관리] [CREATE #3] 목록 안정화 | - | ✅ | 1516ms | 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 | ✅ | 8017ms | DELETE_1 | +| 20 | [회계관리 > 어음관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 21 | [회계관리 > 어음관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 22 | [회계관리 > 어음관리] [DELETE #1] 목록 안정화 | - | ✅ | 1511ms | Waited 1500ms | +| 101 | [회계관리 > 어음관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 102 | [회계관리 > 어음관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1012ms | Waited 1000ms | +| 103 | [회계관리 > 어음관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 23 | [회계관리 > 어음관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 8019ms | DELETE_2 | +| 24 | [회계관리 > 어음관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 25 | [회계관리 > 어음관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 26 | [회계관리 > 어음관리] [DELETE #2] 목록 안정화 | - | ✅ | 1517ms | Waited 1500ms | +| 104 | [회계관리 > 어음관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 105 | [회계관리 > 어음관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1011ms | Waited 1000ms | +| 106 | [회계관리 > 어음관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 27 | [회계관리 > 어음관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 8017ms | DELETE_3 | +| 28 | [회계관리 > 어음관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 29 | [회계관리 > 어음관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 어음관리] [DELETE #3] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 31 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 2ms | Page reload | +| 32 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 어음관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1013ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_10-18-03.md b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_10-18-03.md new file mode 100644 index 0000000..80c0d3a --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_10-18-03.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 어음관리 + +**테스트 ID**: batch-create-acc-bills | **실행**: 2026-03-04_10-18-03 | **결과**: PASS +**소요 시간**: 96.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 어음관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 9933ms | CREATE_1 | +| 5 | [회계관리 > 어음관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 어음관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 7 | [회계관리 > 어음관리] [CREATE #1] 목록 안정화 | - | ✅ | 1511ms | Waited 1500ms | +| 8 | [회계관리 > 어음관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 9903ms | CREATE_2 | +| 9 | [회계관리 > 어음관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 10 | [회계관리 > 어음관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [CREATE #2] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 12 | [회계관리 > 어음관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 9916ms | CREATE_3 | +| 13 | [회계관리 > 어음관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 15 | [회계관리 > 어음관리] [CREATE #3] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | +| 16 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 10ms | Page reload | +| 17 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 18 | [회계관리 > 어음관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1008ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 어음관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 8031ms | DELETE_1 | +| 20 | [회계관리 > 어음관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 21 | [회계관리 > 어음관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 22 | [회계관리 > 어음관리] [DELETE #1] 목록 안정화 | - | ✅ | 1506ms | Waited 1500ms | +| 101 | [회계관리 > 어음관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 102 | [회계관리 > 어음관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1003ms | Waited 1000ms | +| 103 | [회계관리 > 어음관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 23 | [회계관리 > 어음관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 8029ms | DELETE_2 | +| 24 | [회계관리 > 어음관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 25 | [회계관리 > 어음관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [회계관리 > 어음관리] [DELETE #2] 목록 안정화 | - | ✅ | 1509ms | Waited 1500ms | +| 104 | [회계관리 > 어음관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 105 | [회계관리 > 어음관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 106 | [회계관리 > 어음관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 27 | [회계관리 > 어음관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 8016ms | DELETE_3 | +| 28 | [회계관리 > 어음관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 29 | [회계관리 > 어음관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 어음관리] [DELETE #3] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 31 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 어음관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1007ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_22-51-24.md b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_22-51-24.md new file mode 100644 index 0000000..ae8c319 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-bills_2026-03-04_22-51-24.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 어음관리 + +**테스트 ID**: batch-create-acc-bills | **실행**: 2026-03-04_22-51-24 | **결과**: PASS +**소요 시간**: 96.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 어음관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 9890ms | CREATE_1 | +| 5 | [회계관리 > 어음관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 6 | [회계관리 > 어음관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 7 | [회계관리 > 어음관리] [CREATE #1] 목록 안정화 | - | ✅ | 1514ms | Waited 1500ms | +| 8 | [회계관리 > 어음관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 9859ms | CREATE_2 | +| 9 | [회계관리 > 어음관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 10 | [회계관리 > 어음관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [CREATE #2] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 12 | [회계관리 > 어음관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 9849ms | CREATE_3 | +| 13 | [회계관리 > 어음관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 14 | [회계관리 > 어음관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 15 | [회계관리 > 어음관리] [CREATE #3] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 16 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 2ms | Page reload | +| 17 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 18 | [회계관리 > 어음관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1006ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 어음관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 8020ms | DELETE_1 | +| 20 | [회계관리 > 어음관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 21 | [회계관리 > 어음관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 어음관리] [DELETE #1] 목록 안정화 | - | ✅ | 1512ms | Waited 1500ms | +| 101 | [회계관리 > 어음관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 102 | [회계관리 > 어음관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1014ms | Waited 1000ms | +| 103 | [회계관리 > 어음관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 어음관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 8021ms | DELETE_2 | +| 24 | [회계관리 > 어음관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 25 | [회계관리 > 어음관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 26 | [회계관리 > 어음관리] [DELETE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 104 | [회계관리 > 어음관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 105 | [회계관리 > 어음관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 106 | [회계관리 > 어음관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 27 | [회계관리 > 어음관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 8032ms | DELETE_3 | +| 28 | [회계관리 > 어음관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 29 | [회계관리 > 어음관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 30 | [회계관리 > 어음관리] [DELETE #3] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 31 | [회계관리 > 어음관리] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [회계관리 > 어음관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 어음관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1003ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/Fail-batch-create-acc-deposit_2026-02-27_16-01-22.md b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_15-37-34.md similarity index 53% rename from e2e/results/hotfix/Fail-batch-create-acc-deposit_2026-02-27_16-01-22.md rename to e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_15-37-34.md index 81f5481..154a85e 100644 --- a/e2e/results/hotfix/Fail-batch-create-acc-deposit_2026-02-27_16-01-22.md +++ b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_15-37-34.md @@ -1,47 +1,55 @@ -# ❌ E2E 테스트 실패: 연속 등록 테스트: 입금관리 +# ✅ E2E 테스트 성공: 연속 등록 테스트: 입금관리 -**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-02-27_16-01-22 | **결과**: FAIL -**소요 시간**: 74.8초 | **중단 사유**: critical_failure +**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-03-03_15-37-34 | **결과**: PASS +**소요 시간**: 102.4초 ## 테스트 요약 | 전체 | 성공 | 실패 | 경고 | 성공률 | |------|------|------|------|--------| -| 26 | 25 | 1 | 0 | 96% | - -## 실패 스텝 -| # | 스텝 | Phase | 에러 | -|---|------|-------|------| -| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | E2E_TEST_ 데이터 없음 (ts=20260227_160016) | +| 39 | 39 | 0 | 0 | 100% | ## 전체 스텝 결과 | # | 스텝 | Phase | 상태 | 소요시간 | 비고 | |---|------|-------|------|---------|------| -| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | | 2 | [회계관리 > 입금관리] ts 초기화 | - | ✅ | 1ms | evaluate ok | -| 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | -| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12486ms | CREATE_1 | -| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12467ms | CREATE_1 | +| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | | 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | -| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | -| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12470ms | CREATE_2 | -| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1511ms | Waited 1500ms | +| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12456ms | CREATE_2 | +| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2013ms | Waited 2000ms | | 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | | 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | -| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12437ms | CREATE_3 | -| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | -| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | -| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1510ms | Waited 1500ms | +| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12488ms | CREATE_3 | +| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1503ms | 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 | ✅ | 6517ms | DELETE_1 | -| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | -| 21 | [회계관리 > 입금관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | -| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1515ms | Waited 1500ms | +| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1011ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7538ms | DELETE_1 | +| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 21 | [회계관리 > 입금관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | | 101 | [회계관리 > 입금관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | -| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1008ms | Waited 1000ms | -| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 24 rows | -| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ❌ | 1018ms | E2E_TEST_ 데이터 없음 (ts=20260227_160016) | +| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7533ms | DELETE_2 | +| 24 | [회계관리 > 입금관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 25 | [회계관리 > 입금관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 26 | [회계관리 > 입금관리] [DELETE #2] 목록 안정화 | - | ✅ | 1514ms | Waited 1500ms | +| 104 | [회계관리 > 입금관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 105 | [회계관리 > 입금관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 106 | [회계관리 > 입금관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 27 | [회계관리 > 입금관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7538ms | DELETE_3 | +| 28 | [회계관리 > 입금관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 29 | [회계관리 > 입금관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 입금관리] [DELETE #3] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 31 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 입금관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1007ms | VERIFY_BATCH / rows:20 | ## API 요약 | 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | @@ -53,17 +61,3 @@ |------|------| | 상태 | ✅ 정상 | | URL | https://dev.codebridge-x.com/accounting/deposits | - -## 자동 진단 -| 항목 | 내용 | -|------|------| -| 근본 원인 | **unknown** | -| 스크린샷 | diag_batch-create-acc-deposit_2026-02-27_16-01-21.png | - -### 페이지 상태 -| 항목 | 값 | -|------|----| -| DOM 노드 | 1436 | -| 테이블 행 | 24 | -| API 호출 수 | 0 | -| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_21-34-36.md b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_21-34-36.md new file mode 100644 index 0000000..b8755b6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_21-34-36.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 입금관리 + +**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-03-03_21-34-36 | **결과**: PASS +**소요 시간**: 102.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] ts 초기화 | - | ✅ | 1ms | evaluate ok | +| 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12467ms | CREATE_1 | +| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1518ms | Waited 1500ms | +| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12553ms | CREATE_2 | +| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1511ms | Waited 1500ms | +| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12469ms | CREATE_3 | +| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 16 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1013ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7531ms | DELETE_1 | +| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 21 | [회계관리 > 입금관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1514ms | Waited 1500ms | +| 101 | [회계관리 > 입금관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1003ms | Waited 1000ms | +| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7526ms | DELETE_2 | +| 24 | [회계관리 > 입금관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 25 | [회계관리 > 입금관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [회계관리 > 입금관리] [DELETE #2] 목록 안정화 | - | ✅ | 1516ms | Waited 1500ms | +| 104 | [회계관리 > 입금관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 105 | [회계관리 > 입금관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1013ms | Waited 1000ms | +| 106 | [회계관리 > 입금관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 27 | [회계관리 > 입금관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7517ms | DELETE_3 | +| 28 | [회계관리 > 입금관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 29 | [회계관리 > 입금관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 입금관리] [DELETE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 31 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 입금관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1002ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_22-34-48.md b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_22-34-48.md new file mode 100644 index 0000000..c8b3015 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-03_22-34-48.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 입금관리 + +**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-03-03_22-34-48 | **결과**: PASS +**소요 시간**: 102.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] ts 초기화 | - | ✅ | 1ms | evaluate ok | +| 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12515ms | CREATE_1 | +| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1517ms | Waited 1500ms | +| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12503ms | CREATE_2 | +| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1517ms | Waited 1500ms | +| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12481ms | CREATE_3 | +| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 16 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1012ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7517ms | DELETE_1 | +| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 21 | [회계관리 > 입금관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 101 | [회계관리 > 입금관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7516ms | DELETE_2 | +| 24 | [회계관리 > 입금관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 25 | [회계관리 > 입금관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [회계관리 > 입금관리] [DELETE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 104 | [회계관리 > 입금관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 105 | [회계관리 > 입금관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 106 | [회계관리 > 입금관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 27 | [회계관리 > 입금관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7533ms | DELETE_3 | +| 28 | [회계관리 > 입금관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 29 | [회계관리 > 입금관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 입금관리] [DELETE #3] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 31 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 입금관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1014ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_10-19-45.md b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_10-19-45.md new file mode 100644 index 0000000..76f1b4c --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_10-19-45.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 입금관리 + +**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-03-04_10-19-45 | **결과**: PASS +**소요 시간**: 102.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12437ms | CREATE_1 | +| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1507ms | Waited 1500ms | +| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12478ms | CREATE_2 | +| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1514ms | Waited 1500ms | +| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12435ms | CREATE_3 | +| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 16 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1003ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7514ms | DELETE_1 | +| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 21 | [회계관리 > 입금관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 101 | [회계관리 > 입금관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 0ms | Page reload | +| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7515ms | DELETE_2 | +| 24 | [회계관리 > 입금관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 25 | [회계관리 > 입금관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 26 | [회계관리 > 입금관리] [DELETE #2] 목록 안정화 | - | ✅ | 1515ms | Waited 1500ms | +| 104 | [회계관리 > 입금관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 105 | [회계관리 > 입금관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 106 | [회계관리 > 입금관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 27 | [회계관리 > 입금관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7516ms | DELETE_3 | +| 28 | [회계관리 > 입금관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 29 | [회계관리 > 입금관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 입금관리] [DELETE #3] 목록 안정화 | - | ✅ | 1508ms | Waited 1500ms | +| 31 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 입금관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1006ms | VERIFY_BATCH / rows:20 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/Fail-batch-create-acc-deposit_2026-02-27_18-01-29.md b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_22-53-06.md similarity index 52% rename from e2e/results/hotfix/Fail-batch-create-acc-deposit_2026-02-27_18-01-29.md rename to e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_22-53-06.md index 626eb7a..302e6c6 100644 --- a/e2e/results/hotfix/Fail-batch-create-acc-deposit_2026-02-27_18-01-29.md +++ b/e2e/results/hotfix/success/OK-batch-create-acc-deposit_2026-03-04_22-53-06.md @@ -1,47 +1,55 @@ -# ❌ E2E 테스트 실패: 연속 등록 테스트: 입금관리 +# ✅ E2E 테스트 성공: 연속 등록 테스트: 입금관리 -**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-02-27_18-01-29 | **결과**: FAIL -**소요 시간**: 75.2초 | **중단 사유**: critical_failure +**테스트 ID**: batch-create-acc-deposit | **실행**: 2026-03-04_22-53-06 | **결과**: PASS +**소요 시간**: 102.4초 ## 테스트 요약 | 전체 | 성공 | 실패 | 경고 | 성공률 | |------|------|------|------|--------| -| 26 | 25 | 1 | 0 | 96% | - -## 실패 스텝 -| # | 스텝 | Phase | 에러 | -|---|------|-------|------| -| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | E2E_TEST_ 데이터 없음 (ts=20260227_180023) | +| 39 | 39 | 0 | 0 | 100% | ## 전체 스텝 결과 | # | 스텝 | Phase | 상태 | 소요시간 | 비고 | |---|------|-------|------|---------|------| -| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | | 2 | [회계관리 > 입금관리] ts 초기화 | - | ✅ | 1ms | evaluate ok | | 3 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | -| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12500ms | CREATE_1 | -| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2010ms | Waited 2000ms | -| 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | -| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | -| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12481ms | CREATE_2 | -| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2007ms | Waited 2000ms | -| 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | -| 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1509ms | Waited 1500ms | -| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12483ms | CREATE_3 | -| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | -| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | -| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | -| 16 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 4 | [회계관리 > 입금관리] [CREATE #1] 데이터 생성 | CREATE | ✅ | 12436ms | CREATE_1 | +| 5 | [회계관리 > 입금관리] [CREATE #1] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 입금관리] [CREATE #1] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 7 | [회계관리 > 입금관리] [CREATE #1] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 8 | [회계관리 > 입금관리] [CREATE #2] 데이터 생성 | CREATE | ✅ | 12485ms | CREATE_2 | +| 9 | [회계관리 > 입금관리] [CREATE #2] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 10 | [회계관리 > 입금관리] [CREATE #2] 목록 복귀 | CREATE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [CREATE #2] 목록 안정화 | - | ✅ | 1508ms | Waited 1500ms | +| 12 | [회계관리 > 입금관리] [CREATE #3] 데이터 생성 | CREATE | ✅ | 12469ms | CREATE_3 | +| 13 | [회계관리 > 입금관리] [CREATE #3] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 14 | [회계관리 > 입금관리] [CREATE #3] 목록 복귀 | CREATE | ✅ | 1ms | evaluate ok | +| 15 | [회계관리 > 입금관리] [CREATE #3] 목록 안정화 | - | ✅ | 1516ms | Waited 1500ms | +| 16 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | | 17 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | -| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1003ms | VERIFY_BATCH / rows:20 | -| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 6517ms | DELETE_1 | -| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 18 | [회계관리 > 입금관리] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1011ms | VERIFY_BATCH / rows:20 | +| 19 | [회계관리 > 입금관리] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7533ms | DELETE_1 | +| 20 | [회계관리 > 입금관리] [DELETE #1] 삭제 후 대기 | - | ✅ | 2015ms | Waited 2000ms | | 21 | [회계관리 > 입금관리] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | -| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 22 | [회계관리 > 입금관리] [DELETE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | | 101 | [회계관리 > 입금관리] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | -| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1011ms | Waited 1000ms | -| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 27 rows | -| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ❌ | 1018ms | E2E_TEST_ 데이터 없음 (ts=20260227_180023) | +| 102 | [회계관리 > 입금관리] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 103 | [회계관리 > 입금관리] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 23 | [회계관리 > 입금관리] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7532ms | DELETE_2 | +| 24 | [회계관리 > 입금관리] [DELETE #2] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 25 | [회계관리 > 입금관리] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [회계관리 > 입금관리] [DELETE #2] 목록 안정화 | - | ✅ | 1514ms | Waited 1500ms | +| 104 | [회계관리 > 입금관리] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 105 | [회계관리 > 입금관리] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 106 | [회계관리 > 입금관리] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 27 | [회계관리 > 입금관리] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7548ms | DELETE_3 | +| 28 | [회계관리 > 입금관리] [DELETE #3] 삭제 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 29 | [회계관리 > 입금관리] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [회계관리 > 입금관리] [DELETE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 31 | [회계관리 > 입금관리] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [회계관리 > 입금관리] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 33 | [회계관리 > 입금관리] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1009ms | VERIFY_BATCH / rows:20 | ## API 요약 | 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | @@ -53,17 +61,3 @@ |------|------| | 상태 | ✅ 정상 | | URL | https://dev.codebridge-x.com/accounting/deposits | - -## 자동 진단 -| 항목 | 내용 | -|------|------| -| 근본 원인 | **unknown** | -| 스크린샷 | diag_batch-create-acc-deposit_2026-02-27_18-01-28.png | - -### 페이지 상태 -| 항목 | 값 | -|------|----| -| DOM 노드 | 1490 | -| 테이블 행 | 27 | -| API 호출 수 | 0 | -| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/Fail-batch-create-board_2026-02-27_16-02-57.md b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_15-39-09.md similarity index 63% rename from e2e/results/hotfix/Fail-batch-create-board_2026-02-27_16-02-57.md rename to e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_15-39-09.md index 74f80b1..f1412a0 100644 --- a/e2e/results/hotfix/Fail-batch-create-board_2026-02-27_16-02-57.md +++ b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_15-39-09.md @@ -1,58 +1,55 @@ -# ❌ E2E 테스트 실패: 연속 등록 테스트: 자유게시판 +# ✅ E2E 테스트 성공: 연속 등록 테스트: 자유게시판 -**테스트 ID**: batch-create-board | **실행**: 2026-02-27_16-02-57 | **결과**: FAIL -**소요 시간**: 95.1초 +**테스트 ID**: batch-create-board | **실행**: 2026-03-03_15-39-09 | **결과**: PASS +**소요 시간**: 94.9초 ## 테스트 요약 | 전체 | 성공 | 실패 | 경고 | 성공률 | |------|------|------|------|--------| -| 33 | 32 | 1 | 0 | 97% | - -## 실패 스텝 -| # | 스텝 | Phase | 에러 | -|---|------|-------|------| -| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | 기대 0건, 실제 3건 rows=10 body=true row0=[ 1 -0E2E_BATCH_3_20260227_160131 - 회원 4 게시됨 2026-02-27] | +| 39 | 39 | 0 | 0 | 100% | ## 전체 스텝 결과 | # | 스텝 | Phase | 상태 | 소요시간 | 비고 | |---|------|-------|------|---------|------| -| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | | 2 | [게시판 > 자유게시판] ts 초기화 | - | ✅ | 1ms | evaluate ok | | 3 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | -| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7937ms | CREATE_1 | -| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | -| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2017ms | evaluate ok | +| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7945ms | CREATE_1 | +| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2019ms | evaluate ok | | 7 | [게시판 > 자유게시판] [CREATE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | -| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7950ms | CREATE_2 | -| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7949ms | CREATE_2 | +| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | | 10 | [게시판 > 자유게시판] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2017ms | evaluate ok | -| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | -| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7967ms | CREATE_3 | -| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | -| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2006ms | evaluate ok | -| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | -| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | -| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 2ms | Table loaded: 10 rows | -| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1003ms | VERIFY_BATCH / rows:10 | -| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 6532ms | DELETE_1 | -| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2015ms | Waited 2000ms | -| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 2017ms | evaluate ok | -| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | -| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 6526ms | DELETE_2 | -| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2004ms | Waited 2000ms | -| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 2009ms | evaluate ok | -| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1510ms | Waited 1500ms | -| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 6517ms | DELETE_3 | +| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1516ms | Waited 1500ms | +| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7936ms | CREATE_3 | +| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1009ms | VERIFY_BATCH / rows:10 | +| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7535ms | DELETE_1 | +| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | +| 201 | [게시판 > 자유게시판] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 202 | [게시판 > 자유게시판] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1009ms | Waited 1000ms | +| 203 | [게시판 > 자유게시판] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7533ms | DELETE_2 | +| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1505ms | Waited 1500ms | +| 204 | [게시판 > 자유게시판] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 205 | [게시판 > 자유게시판] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 206 | [게시판 > 자유게시판] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7533ms | DELETE_3 | | 28 | [게시판 > 자유게시판] [DELETE #3] 삭제 후 대기 | - | ✅ | 2016ms | Waited 2000ms | -| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 2015ms | evaluate ok | -| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | -| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | | 32 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | -| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ❌ | 4036ms | 기대 0건, 실제 3건 rows=10 body=true row0=[ 1 -0E2E_BATCH_3_20260227_160131 - 회원 4 게시됨 | +| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1015ms | VERIFY_BATCH / rows:10 | ## API 요약 | 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | @@ -64,17 +61,3 @@ |------|------| | 상태 | ✅ 정상 | | URL | https://dev.codebridge-x.com/boards/free | - -## 자동 진단 -| 항목 | 내용 | -|------|------| -| 근본 원인 | **unknown** | -| 스크린샷 | diag_batch-create-board_2026-02-27_16-02-57.png | - -### 페이지 상태 -| 항목 | 값 | -|------|----| -| DOM 노드 | 925 | -| 테이블 행 | 10 | -| API 호출 수 | 0 | -| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_21-36-11.md b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_21-36-11.md new file mode 100644 index 0000000..e01725d --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_21-36-11.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 자유게시판 + +**테스트 ID**: batch-create-board | **실행**: 2026-03-03_21-36-11 | **결과**: PASS +**소요 시간**: 94.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7963ms | CREATE_1 | +| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2016ms | Waited 2000ms | +| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2017ms | evaluate ok | +| 7 | [게시판 > 자유게시판] [CREATE #1] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7951ms | CREATE_2 | +| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 10 | [게시판 > 자유게시판] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7949ms | CREATE_3 | +| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1005ms | VERIFY_BATCH / rows:10 | +| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7529ms | DELETE_1 | +| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 201 | [게시판 > 자유게시판] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 202 | [게시판 > 자유게시판] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1005ms | Waited 1000ms | +| 203 | [게시판 > 자유게시판] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7511ms | DELETE_2 | +| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 204 | [게시판 > 자유게시판] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 205 | [게시판 > 자유게시판] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1000ms | Waited 1000ms | +| 206 | [게시판 > 자유게시판] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7535ms | DELETE_3 | +| 28 | [게시판 > 자유게시판] [DELETE #3] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1516ms | Waited 1500ms | +| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1016ms | VERIFY_BATCH / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_22-36-23.md b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_22-36-23.md new file mode 100644 index 0000000..45b6ba1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-03_22-36-23.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 자유게시판 + +**테스트 ID**: batch-create-board | **실행**: 2026-03-03_22-36-23 | **결과**: PASS +**소요 시간**: 94.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7953ms | CREATE_1 | +| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2011ms | evaluate ok | +| 7 | [게시판 > 자유게시판] [CREATE #1] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7955ms | CREATE_2 | +| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 10 | [게시판 > 자유게시판] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2002ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7949ms | CREATE_3 | +| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 2ms | Page reload | +| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1003ms | VERIFY_BATCH / rows:10 | +| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7539ms | DELETE_1 | +| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 201 | [게시판 > 자유게시판] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 202 | [게시판 > 자유게시판] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 203 | [게시판 > 자유게시판] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7519ms | DELETE_2 | +| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 204 | [게시판 > 자유게시판] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 205 | [게시판 > 자유게시판] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 206 | [게시판 > 자유게시판] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7525ms | DELETE_3 | +| 28 | [게시판 > 자유게시판] [DELETE #3] 삭제 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 32 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1006ms | VERIFY_BATCH / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_10-21-20.md b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_10-21-20.md new file mode 100644 index 0000000..6b34373 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_10-21-20.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 자유게시판 + +**테스트 ID**: batch-create-board | **실행**: 2026-03-04_10-21-20 | **결과**: PASS +**소요 시간**: 94.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] ts 초기화 | - | ✅ | 0ms | evaluate ok | +| 3 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7943ms | CREATE_1 | +| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 7 | [게시판 > 자유게시판] [CREATE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7921ms | CREATE_2 | +| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 10 | [게시판 > 자유게시판] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1503ms | Waited 1500ms | +| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7949ms | CREATE_3 | +| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2002ms | evaluate ok | +| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1500ms | Waited 1500ms | +| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1006ms | VERIFY_BATCH / rows:10 | +| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7518ms | DELETE_1 | +| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 201 | [게시판 > 자유게시판] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 202 | [게시판 > 자유게시판] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 203 | [게시판 > 자유게시판] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7533ms | DELETE_2 | +| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2020ms | Waited 2000ms | +| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1514ms | Waited 1500ms | +| 204 | [게시판 > 자유게시판] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 2ms | Page reload | +| 205 | [게시판 > 자유게시판] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1013ms | Waited 1000ms | +| 206 | [게시판 > 자유게시판] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7518ms | DELETE_3 | +| 28 | [게시판 > 자유게시판] [DELETE #3] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1513ms | Waited 1500ms | +| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1009ms | VERIFY_BATCH / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_22-54-41.md b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_22-54-41.md new file mode 100644 index 0000000..45bb490 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-create-board_2026-03-04_22-54-41.md @@ -0,0 +1,63 @@ +# ✅ E2E 테스트 성공: 연속 등록 테스트: 자유게시판 + +**테스트 ID**: batch-create-board | **실행**: 2026-03-04_22-54-41 | **결과**: PASS +**소요 시간**: 94.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 39 | 39 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] ts 초기화 | - | ✅ | 1ms | evaluate ok | +| 3 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 4 | [게시판 > 자유게시판] [CREATE #1] 데이터 생성 | CREATE | ✅ | 7947ms | CREATE_1 | +| 5 | [게시판 > 자유게시판] [CREATE #1] 생성 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [게시판 > 자유게시판] [CREATE #1] 목록 복귀 | CREATE | ✅ | 2014ms | evaluate ok | +| 7 | [게시판 > 자유게시판] [CREATE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 8 | [게시판 > 자유게시판] [CREATE #2] 데이터 생성 | CREATE | ✅ | 7935ms | CREATE_2 | +| 9 | [게시판 > 자유게시판] [CREATE #2] 생성 후 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 10 | [게시판 > 자유게시판] [CREATE #2] 목록 복귀 | CREATE | ✅ | 2002ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [CREATE #2] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 12 | [게시판 > 자유게시판] [CREATE #3] 데이터 생성 | CREATE | ✅ | 7947ms | CREATE_3 | +| 13 | [게시판 > 자유게시판] [CREATE #3] 생성 후 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 14 | [게시판 > 자유게시판] [CREATE #3] 목록 복귀 | CREATE | ✅ | 2012ms | evaluate ok | +| 15 | [게시판 > 자유게시판] [CREATE #3] 목록 안정화 | - | ✅ | 1502ms | Waited 1500ms | +| 16 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 1ms | Page reload | +| 17 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 18 | [게시판 > 자유게시판] [VERIFY] 3건 생성 확인 | VERIFY | ✅ | 1002ms | VERIFY_BATCH / rows:10 | +| 19 | [게시판 > 자유게시판] [DELETE #1] 데이터 삭제 | DELETE | ✅ | 7522ms | DELETE_1 | +| 20 | [게시판 > 자유게시판] [DELETE #1] 삭제 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 21 | [게시판 > 자유게시판] [DELETE #1] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 22 | [게시판 > 자유게시판] [DELETE #1] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 201 | [게시판 > 자유게시판] [DELETE #2 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 202 | [게시판 > 자유게시판] [DELETE #2 준비] 새로고침 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 203 | [게시판 > 자유게시판] [DELETE #2 준비] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 23 | [게시판 > 자유게시판] [DELETE #2] 데이터 삭제 | DELETE | ✅ | 7532ms | DELETE_2 | +| 24 | [게시판 > 자유게시판] [DELETE #2] 삭제 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 25 | [게시판 > 자유게시판] [DELETE #2] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 26 | [게시판 > 자유게시판] [DELETE #2] 목록 안정화 | - | ✅ | 1504ms | Waited 1500ms | +| 204 | [게시판 > 자유게시판] [DELETE #3 준비] 페이지 새로고침 | - | ✅ | 1ms | Page reload | +| 205 | [게시판 > 자유게시판] [DELETE #3 준비] 새로고침 대기 | - | ✅ | 1000ms | Waited 1000ms | +| 206 | [게시판 > 자유게시판] [DELETE #3 준비] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 27 | [게시판 > 자유게시판] [DELETE #3] 데이터 삭제 | DELETE | ✅ | 7522ms | DELETE_3 | +| 28 | [게시판 > 자유게시판] [DELETE #3] 삭제 후 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 29 | [게시판 > 자유게시판] [DELETE #3] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 30 | [게시판 > 자유게시판] [DELETE #3] 목록 안정화 | - | ✅ | 1501ms | Waited 1500ms | +| 31 | [게시판 > 자유게시판] [VERIFY] 목록 새로고침 | - | ✅ | 0ms | Page reload | +| 32 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 33 | [게시판 > 자유게시판] [VERIFY] 전체 삭제 확인 | VERIFY | ✅ | 1006ms | VERIFY_BATCH / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_15-39-36.md b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_15-39-36.md new file mode 100644 index 0000000..9a80e60 --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_15-39-36.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 + +**테스트 ID**: batch-update-account-sales | **실행**: 2026-03-03_15-39-36 | **결과**: PASS +**소요 시간**: 26.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5007ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 현재 매출유형 캡처 | CAPTURE | ✅ | 514ms | CAPTURE_BEFORE / rows:20 | +| 4 | [회계관리 > 매출관리] [SELECT] 첫 행 체크박스 선택 | SELECT | ✅ | 502ms | SELECT_ROW | +| 5 | [회계관리 > 매출관리] [SELECT] 계정과목 드롭다운에서 다른 값 선택 | SELECT | ✅ | 1018ms | CHANGE_ACCOUNT | +| 6 | [회계관리 > 매출관리] [SAVE] 저장 버튼 클릭 | SAVE | ✅ | 1511ms | SAVE | +| 7 | [회계관리 > 매출관리] [SAVE] 확인 다이얼로그 → 확인 클릭 | SAVE | ✅ | 2002ms | CONFIRM | +| 8 | [회계관리 > 매출관리] [VERIFY-1] 토스트 메시지 확인 | VERIFY | ✅ | 1003ms | VERIFY_TOAST / ⚠️ 성공 토스트 미감지 | +| 9 | [회계관리 > 매출관리] [VERIFY-2] ★핵심★ 첫 행 매출유형 실제 변경 확인 | VERIFY | ✅ | 1007ms | VERIFY_DATA_CHANGED / 🐛 BUG-SALES-20260115-001 재현: 토스트 성공 but 데이터 미변경 (beforeTy | +| 10 | [회계관리 > 매출관리] [RELOAD] 새로고침 | - | ✅ | 1ms | Page reload | +| 11 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5014ms | Waited 5000ms | +| 12 | [회계관리 > 매출관리] [RELOAD] 테이블 재로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 13 | [회계관리 > 매출관리] [VERIFY-3] ★핵심★ 새로고침 후에도 변경값 유지 확인 | VERIFY | ✅ | 1004ms | VERIFY_PERSIST / ⚠️ 새로고침 후 상태 확인 불가 | +| 14 | [회계관리 > 매출관리] [RESTORE] 원래 값 복원 (선택적) | RESTORE | ✅ | 0ms | RESTORE / 원래 값 없음 - 복원 스킵 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_21-36-38.md b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_21-36-38.md new file mode 100644 index 0000000..32e473b --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_21-36-38.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 + +**테스트 ID**: batch-update-account-sales | **실행**: 2026-03-03_21-36-38 | **결과**: PASS +**소요 시간**: 26.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5012ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 현재 매출유형 캡처 | CAPTURE | ✅ | 515ms | CAPTURE_BEFORE / rows:20 | +| 4 | [회계관리 > 매출관리] [SELECT] 첫 행 체크박스 선택 | SELECT | ✅ | 502ms | SELECT_ROW | +| 5 | [회계관리 > 매출관리] [SELECT] 계정과목 드롭다운에서 다른 값 선택 | SELECT | ✅ | 1033ms | CHANGE_ACCOUNT | +| 6 | [회계관리 > 매출관리] [SAVE] 저장 버튼 클릭 | SAVE | ✅ | 1505ms | SAVE | +| 7 | [회계관리 > 매출관리] [SAVE] 확인 다이얼로그 → 확인 클릭 | SAVE | ✅ | 2010ms | CONFIRM | +| 8 | [회계관리 > 매출관리] [VERIFY-1] 토스트 메시지 확인 | VERIFY | ✅ | 1017ms | VERIFY_TOAST / ⚠️ 성공 토스트 미감지 | +| 9 | [회계관리 > 매출관리] [VERIFY-2] ★핵심★ 첫 행 매출유형 실제 변경 확인 | VERIFY | ✅ | 1018ms | VERIFY_DATA_CHANGED / 🐛 BUG-SALES-20260115-001 재현: 토스트 성공 but 데이터 미변경 (beforeTy | +| 10 | [회계관리 > 매출관리] [RELOAD] 새로고침 | - | ✅ | 2ms | Page reload | +| 11 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5006ms | Waited 5000ms | +| 12 | [회계관리 > 매출관리] [RELOAD] 테이블 재로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 13 | [회계관리 > 매출관리] [VERIFY-3] ★핵심★ 새로고침 후에도 변경값 유지 확인 | VERIFY | ✅ | 1002ms | 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/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_22-36-50.md b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_22-36-50.md new file mode 100644 index 0000000..ae2363a --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-03_22-36-50.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 + +**테스트 ID**: batch-update-account-sales | **실행**: 2026-03-03_22-36-50 | **결과**: PASS +**소요 시간**: 26.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5002ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 현재 매출유형 캡처 | CAPTURE | ✅ | 517ms | CAPTURE_BEFORE / rows:20 | +| 4 | [회계관리 > 매출관리] [SELECT] 첫 행 체크박스 선택 | SELECT | ✅ | 508ms | SELECT_ROW | +| 5 | [회계관리 > 매출관리] [SELECT] 계정과목 드롭다운에서 다른 값 선택 | SELECT | ✅ | 1038ms | CHANGE_ACCOUNT | +| 6 | [회계관리 > 매출관리] [SAVE] 저장 버튼 클릭 | SAVE | ✅ | 1502ms | SAVE | +| 7 | [회계관리 > 매출관리] [SAVE] 확인 다이얼로그 → 확인 클릭 | SAVE | ✅ | 2013ms | CONFIRM | +| 8 | [회계관리 > 매출관리] [VERIFY-1] 토스트 메시지 확인 | VERIFY | ✅ | 1005ms | VERIFY_TOAST / ⚠️ 성공 토스트 미감지 | +| 9 | [회계관리 > 매출관리] [VERIFY-2] ★핵심★ 첫 행 매출유형 실제 변경 확인 | VERIFY | ✅ | 1004ms | VERIFY_DATA_CHANGED / 🐛 BUG-SALES-20260115-001 재현: 토스트 성공 but 데이터 미변경 (beforeTy | +| 10 | [회계관리 > 매출관리] [RELOAD] 새로고침 | - | ✅ | 1ms | Page reload | +| 11 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5014ms | Waited 5000ms | +| 12 | [회계관리 > 매출관리] [RELOAD] 테이블 재로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 13 | [회계관리 > 매출관리] [VERIFY-3] ★핵심★ 새로고침 후에도 변경값 유지 확인 | VERIFY | ✅ | 1017ms | 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/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_10-21-47.md b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_10-21-47.md new file mode 100644 index 0000000..71e113e --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_10-21-47.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 + +**테스트 ID**: batch-update-account-sales | **실행**: 2026-03-04_10-21-47 | **결과**: PASS +**소요 시간**: 26.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5004ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 현재 매출유형 캡처 | CAPTURE | ✅ | 503ms | CAPTURE_BEFORE / rows:20 | +| 4 | [회계관리 > 매출관리] [SELECT] 첫 행 체크박스 선택 | SELECT | ✅ | 513ms | SELECT_ROW | +| 5 | [회계관리 > 매출관리] [SELECT] 계정과목 드롭다운에서 다른 값 선택 | SELECT | ✅ | 1017ms | CHANGE_ACCOUNT | +| 6 | [회계관리 > 매출관리] [SAVE] 저장 버튼 클릭 | SAVE | ✅ | 1513ms | SAVE | +| 7 | [회계관리 > 매출관리] [SAVE] 확인 다이얼로그 → 확인 클릭 | SAVE | ✅ | 2002ms | CONFIRM | +| 8 | [회계관리 > 매출관리] [VERIFY-1] 토스트 메시지 확인 | VERIFY | ✅ | 1013ms | VERIFY_TOAST / ⚠️ 성공 토스트 미감지 | +| 9 | [회계관리 > 매출관리] [VERIFY-2] ★핵심★ 첫 행 매출유형 실제 변경 확인 | VERIFY | ✅ | 1004ms | VERIFY_DATA_CHANGED / 🐛 BUG-SALES-20260115-001 재현: 토스트 성공 but 데이터 미변경 (beforeTy | +| 10 | [회계관리 > 매출관리] [RELOAD] 새로고침 | - | ✅ | 0ms | Page reload | +| 11 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5017ms | Waited 5000ms | +| 12 | [회계관리 > 매출관리] [RELOAD] 테이블 재로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 13 | [회계관리 > 매출관리] [VERIFY-3] ★핵심★ 새로고침 후에도 변경값 유지 확인 | VERIFY | ✅ | 1015ms | VERIFY_PERSIST / ⚠️ 새로고침 후 상태 확인 불가 | +| 14 | [회계관리 > 매출관리] [RESTORE] 원래 값 복원 (선택적) | RESTORE | ✅ | 3ms | RESTORE / 원래 값 없음 - 복원 스킵 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_22-55-07.md b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_22-55-07.md new file mode 100644 index 0000000..a32b43a --- /dev/null +++ b/e2e/results/hotfix/success/OK-batch-update-account-sales_2026-03-04_22-55-07.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 계정과목 일괄변경 버그 회귀 테스트 (BUG-SALES-20260115-001): 매출관리 + +**테스트 ID**: batch-update-account-sales | **실행**: 2026-03-04_22-55-07 | **결과**: PASS +**소요 시간**: 26.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5005ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 현재 매출유형 캡처 | CAPTURE | ✅ | 508ms | CAPTURE_BEFORE / rows:20 | +| 4 | [회계관리 > 매출관리] [SELECT] 첫 행 체크박스 선택 | SELECT | ✅ | 507ms | SELECT_ROW | +| 5 | [회계관리 > 매출관리] [SELECT] 계정과목 드롭다운에서 다른 값 선택 | SELECT | ✅ | 1019ms | CHANGE_ACCOUNT | +| 6 | [회계관리 > 매출관리] [SAVE] 저장 버튼 클릭 | SAVE | ✅ | 1503ms | SAVE | +| 7 | [회계관리 > 매출관리] [SAVE] 확인 다이얼로그 → 확인 클릭 | SAVE | ✅ | 2008ms | CONFIRM | +| 8 | [회계관리 > 매출관리] [VERIFY-1] 토스트 메시지 확인 | VERIFY | ✅ | 1008ms | VERIFY_TOAST / ⚠️ 성공 토스트 미감지 | +| 9 | [회계관리 > 매출관리] [VERIFY-2] ★핵심★ 첫 행 매출유형 실제 변경 확인 | VERIFY | ✅ | 1014ms | VERIFY_DATA_CHANGED / 🐛 BUG-SALES-20260115-001 재현: 토스트 성공 but 데이터 미변경 (beforeTy | +| 10 | [회계관리 > 매출관리] [RELOAD] 새로고침 | - | ✅ | 1ms | Page reload | +| 11 | [회계관리 > 매출관리] [RELOAD] 새로고침 후 대기 | - | ✅ | 5001ms | Waited 5000ms | +| 12 | [회계관리 > 매출관리] [RELOAD] 테이블 재로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 13 | [회계관리 > 매출관리] [VERIFY-3] ★핵심★ 새로고침 후에도 변경값 유지 확인 | VERIFY | ✅ | 1007ms | 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/e2e/results/hotfix/success/OK-board-management_2026-03-03_15-39-47.md b/e2e/results/hotfix/success/OK-board-management_2026-03-03_15-39-47.md new file mode 100644 index 0000000..f7099dc --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-management_2026-03-03_15-39-47.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 게시판 관리 테스트 + +**테스트 ID**: board-management | **실행**: 2026-03-03_15-39-47 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 22 | 22 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 관리 | - | ✅ | 510ms | Menu navigation: 게시판 > 게시판 관리 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/board/board-management | +| 3 | 목업 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | 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 | 검색 기능 | - | ✅ | 1012ms | Searched: "테스트" | +| 9 | 검색 결과 대기 | - | ✅ | 1000ms | Waited 1000ms | +| 10 | 검색 결과 데이터 검증 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Search res"... is not valid JSON/raw:Search res | +| 11 | 검색 초기화 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Search cleared" is not valid JSON/raw:Search cl | +| 12 | 검색 초기화 결과 대기 | - | ✅ | 1016ms | 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 | 첫 번째 행 클릭 | - | ✅ | 516ms | Clicked first row | +| 16 | 상세 페이지 로딩 대기 | - | ✅ | 1000ms | Waited 1000ms | +| 17 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'D', "Detail pag"... is not valid JSON/raw:Detail pag | +| 18 | 상세 확인 | - | ✅ | 1ms | Detail checks: 1/1 | +| 19 | 모달 닫기 | - | ✅ | 1ms | No modal open | +| 20 | 페이지네이션 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 22 | 목록 복귀 | - | ✅ | 311ms | Clicked (existed): button:has-text('목록'), a:has-text('목록') | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 51ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/board/board-management | diff --git a/e2e/results/hotfix/success/OK-board-management_2026-03-03_21-36-49.md b/e2e/results/hotfix/success/OK-board-management_2026-03-03_21-36-49.md new file mode 100644 index 0000000..1e02968 --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-management_2026-03-03_21-36-49.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 게시판 관리 테스트 + +**테스트 ID**: board-management | **실행**: 2026-03-03_21-36-49 | **결과**: PASS +**소요 시간**: 11.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 22 | 22 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 관리 | - | ✅ | 509ms | Menu navigation: 게시판 > 게시판 관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/board/board-management | +| 3 | 목업 감지 | - | ✅ | 1ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 8 cards found" is not valid JSON/raw:Sta | +| 5 | 게시판 관리 페이지 확인 | - | ✅ | 1ms | Detail checks: 1/1 | +| 6 | 테이블 확인 | - | ✅ | 1ms | 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 | 검색 결과 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 10 | 검색 결과 데이터 검증 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Search res"... is not valid JSON/raw:Search res | +| 11 | 검색 초기화 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Search cleared" is not valid JSON/raw:Search cl | +| 12 | 검색 초기화 결과 대기 | - | ✅ | 1014ms | Waited 1000ms | +| 13 | 검색 초기화 및 복원 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'R', "Restored: 2 rows" is not valid JSON/raw:Restore | +| 14 | 검색 후 확인 | - | ✅ | 1ms | Detail checks: 1/1 | +| 15 | 첫 번째 행 클릭 | - | ✅ | 514ms | Clicked first row | +| 16 | 상세 페이지 로딩 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 17 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 1ms | 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 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 22 | 목록 복귀 | - | ✅ | 314ms | Clicked (existed): button:has-text('목록'), a:has-text('목록') | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 51ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/board/board-management | diff --git a/e2e/results/hotfix/success/OK-board-management_2026-03-03_22-37-01.md b/e2e/results/hotfix/success/OK-board-management_2026-03-03_22-37-01.md new file mode 100644 index 0000000..b1cb38b --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-management_2026-03-03_22-37-01.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 게시판 관리 테스트 + +**테스트 ID**: board-management | **실행**: 2026-03-03_22-37-01 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 22 | 22 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 관리 | - | ✅ | 516ms | Menu navigation: 게시판 > 게시판 관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/board/board-management | +| 3 | 목업 감지 | - | ✅ | 1ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 8 cards found" is not valid JSON/raw:Sta | +| 5 | 게시판 관리 페이지 확인 | - | ✅ | 0ms | Detail checks: 1/1 | +| 6 | 테이블 확인 | - | ✅ | 1ms | Table: 7 cols, 3 rows | +| 7 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 8 | 검색 기능 | - | ✅ | 1005ms | Searched: "테스트" | +| 9 | 검색 결과 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 10 | 검색 결과 데이터 검증 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Search res"... is not valid JSON/raw:Search res | +| 11 | 검색 초기화 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Search cleared" is not valid JSON/raw:Search cl | +| 12 | 검색 초기화 결과 대기 | - | ✅ | 1015ms | Waited 1000ms | +| 13 | 검색 초기화 및 복원 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'R', "Restored: 2 rows" is not valid JSON/raw:Restore | +| 14 | 검색 후 확인 | - | ✅ | 0ms | Detail checks: 1/1 | +| 15 | 첫 번째 행 클릭 | - | ✅ | 517ms | Clicked first row | +| 16 | 상세 페이지 로딩 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 17 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'D', "Detail pag"... is not valid JSON/raw:Detail pag | +| 18 | 상세 확인 | - | ✅ | 1ms | Detail checks: 1/1 | +| 19 | 모달 닫기 | - | ✅ | 0ms | No modal open | +| 20 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 21 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | +| 22 | 목록 복귀 | - | ✅ | 314ms | Clicked (existed): button:has-text('목록'), a:has-text('목록') | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 53ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/board/board-management | diff --git a/e2e/results/hotfix/success/OK-board-management_2026-03-04_10-21-59.md b/e2e/results/hotfix/success/OK-board-management_2026-03-04_10-21-59.md new file mode 100644 index 0000000..7ed79c7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-management_2026-03-04_10-21-59.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 게시판 관리 테스트 + +**테스트 ID**: board-management | **실행**: 2026-03-04_10-21-59 | **결과**: PASS +**소요 시간**: 11.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 22 | 22 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 관리 | - | ✅ | 519ms | Menu navigation: 게시판 > 게시판 관리 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/board/board-management | +| 3 | 목업 감지 | - | ✅ | 1ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 8 cards found" is not valid JSON/raw:Sta | +| 5 | 게시판 관리 페이지 확인 | - | ✅ | 0ms | Detail checks: 1/1 | +| 6 | 테이블 확인 | - | ✅ | 0ms | Table: 7 cols, 3 rows | +| 7 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No filter "... is not valid JSON/raw:No filter | +| 8 | 검색 기능 | - | ✅ | 1013ms | Searched: "테스트" | +| 9 | 검색 결과 대기 | - | ✅ | 1015ms | 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 | 검색 초기화 결과 대기 | - | ✅ | 1001ms | 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 | 첫 번째 행 클릭 | - | ✅ | 513ms | Clicked first row | +| 16 | 상세 페이지 로딩 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 17 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 2ms | 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 | 페이지네이션 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 22 | 목록 복귀 | - | ✅ | 312ms | Clicked (existed): button:has-text('목록'), a:has-text('목록') | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 83ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/board/board-management | diff --git a/e2e/results/hotfix/success/OK-board-management_2026-03-04_22-55-19.md b/e2e/results/hotfix/success/OK-board-management_2026-03-04_22-55-19.md new file mode 100644 index 0000000..d966cba --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-management_2026-03-04_22-55-19.md @@ -0,0 +1,46 @@ +# ✅ E2E 테스트 성공: 게시판 관리 테스트 + +**테스트 ID**: board-management | **실행**: 2026-03-04_22-55-19 | **결과**: PASS +**소요 시간**: 11.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 22 | 22 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 관리 | - | ✅ | 506ms | Menu navigation: 게시판 > 게시판 관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/board/board-management | +| 3 | 목업 감지 | - | ✅ | 1ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 8 cards found" is not valid JSON/raw:Sta | +| 5 | 게시판 관리 페이지 확인 | - | ✅ | 0ms | 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 | 검색 기능 | - | ✅ | 1006ms | Searched: "테스트" | +| 9 | 검색 결과 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 10 | 검색 결과 데이터 검증 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Search res"... is not valid JSON/raw:Search res | +| 11 | 검색 초기화 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Search cleared" is not valid JSON/raw:Search cl | +| 12 | 검색 초기화 결과 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 13 | 검색 초기화 및 복원 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'R', "Restored: 2 rows" is not valid JSON/raw:Restore | +| 14 | 검색 후 확인 | - | ✅ | 1ms | Detail checks: 1/1 | +| 15 | 첫 번째 행 클릭 | - | ✅ | 507ms | Clicked first row | +| 16 | 상세 페이지 로딩 대기 | - | ✅ | 1009ms | Waited 1000ms | +| 17 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 2ms | 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 | 페이지네이션 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 22 | 목록 복귀 | - | ✅ | 312ms | Clicked (existed): button:has-text('목록'), a:has-text('목록') | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 53ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/board/board-management | diff --git a/e2e/results/hotfix/success/OK-board-test_2026-03-03_15-40-02.md b/e2e/results/hotfix/success/OK-board-test_2026-03-03_15-40-02.md new file mode 100644 index 0000000..ad53c0f --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-test_2026-03-03_15-40-02.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 게시판 테스트 페이지 테스트 + +**테스트 ID**: board-test | **실행**: 2026-03-03_15-40-02 | **결과**: PASS +**소요 시간**: 14.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 11 | 0 | 2 | 85% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 테스트 | - | ✅ | 2523ms | Menu navigation: 게시판 > 게시판 테스트 | +| 2 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 69 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 게시판 테이블 구조 확인 | - | ✅ | 1ms | Table: 7 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 215ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 8 | 글쓰기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "Write button: 글쓰기" is not valid JSON/raw:Write | +| 9 | 게시글 행 클릭 | - | ✅ | 320ms | Clicked (existed): table tbody tr:first-child | +| 10 | 게시글 상세 확인 | - | ⚠️ | 1029ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 315ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No pagination (ok)" is not valid JSON/raw:No pa | +| 13 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 7 | 7 | 0 | 67ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/board_mjsgri54_1fmg | diff --git a/e2e/results/hotfix/success/OK-board-test_2026-03-03_21-37-04.md b/e2e/results/hotfix/success/OK-board-test_2026-03-03_21-37-04.md new file mode 100644 index 0000000..8ab4196 --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-test_2026-03-03_21-37-04.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 게시판 테스트 페이지 테스트 + +**테스트 ID**: board-test | **실행**: 2026-03-03_21-37-04 | **결과**: PASS +**소요 시간**: 14.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 11 | 0 | 2 | 85% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 테스트 | - | ✅ | 2510ms | Menu navigation: 게시판 > 게시판 테스트 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 69 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 게시판 테이블 구조 확인 | - | ✅ | 0ms | Table: 7 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 213ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1007ms | Detail checks: 0/1 matched | +| 8 | 글쓰기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "Write button: 글쓰기" is not valid JSON/raw:Write | +| 9 | 게시글 행 클릭 | - | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 10 | 게시글 상세 확인 | - | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 310ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 페이지네이션 확인 | - | ✅ | 1ms | 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 | 72ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/board_mjsgri54_1fmg | diff --git a/e2e/results/hotfix/success/OK-board-test_2026-03-03_22-37-16.md b/e2e/results/hotfix/success/OK-board-test_2026-03-03_22-37-16.md new file mode 100644 index 0000000..4c77a8a --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-test_2026-03-03_22-37-16.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 게시판 테스트 페이지 테스트 + +**테스트 ID**: board-test | **실행**: 2026-03-03_22-37-16 | **결과**: PASS +**소요 시간**: 14.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 11 | 0 | 2 | 85% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 테스트 | - | ✅ | 2513ms | Menu navigation: 게시판 > 게시판 테스트 | +| 2 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 69 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 게시판 테이블 구조 확인 | - | ✅ | 0ms | Table: 7 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 216ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1018ms | Detail checks: 0/1 matched | +| 8 | 글쓰기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "Write button: 글쓰기" is not valid JSON/raw:Write | +| 9 | 게시글 행 클릭 | - | ✅ | 313ms | Clicked (existed): table tbody tr:first-child | +| 10 | 게시글 상세 확인 | - | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 318ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No pagination (ok)" is not valid JSON/raw:No pa | +| 13 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 7 | 7 | 0 | 55ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/board_mjsgri54_1fmg | diff --git a/e2e/results/hotfix/success/OK-board-test_2026-03-04_10-22-13.md b/e2e/results/hotfix/success/OK-board-test_2026-03-04_10-22-13.md new file mode 100644 index 0000000..72873a6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-test_2026-03-04_10-22-13.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 게시판 테스트 페이지 테스트 + +**테스트 ID**: board-test | **실행**: 2026-03-04_10-22-13 | **결과**: PASS +**소요 시간**: 14.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 11 | 0 | 2 | 85% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 테스트 | - | ✅ | 2524ms | Menu navigation: 게시판 > 게시판 테스트 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 69 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 게시판 테이블 구조 확인 | - | ✅ | 1ms | Table: 7 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 214ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1009ms | Detail checks: 0/1 matched | +| 8 | 글쓰기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'W', "Write button: 글쓰기" is not valid JSON/raw:Write | +| 9 | 게시글 행 클릭 | - | ✅ | 306ms | Clicked (existed): table tbody tr:first-child | +| 10 | 게시글 상세 확인 | - | ⚠️ | 1018ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 페이지네이션 확인 | - | ✅ | 2ms | 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 | 78ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/board_mjsgri54_1fmg | diff --git a/e2e/results/hotfix/success/OK-board-test_2026-03-04_22-55-34.md b/e2e/results/hotfix/success/OK-board-test_2026-03-04_22-55-34.md new file mode 100644 index 0000000..d75f70b --- /dev/null +++ b/e2e/results/hotfix/success/OK-board-test_2026-03-04_22-55-34.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 게시판 테스트 페이지 테스트 + +**테스트 ID**: board-test | **실행**: 2026-03-04_22-55-34 | **결과**: PASS +**소요 시간**: 15.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 11 | 0 | 2 | 85% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 게시판 > 게시판 테스트 | - | ✅ | 2514ms | Menu navigation: 게시판 > 게시판 테스트 | +| 2 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 69 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 5 | 게시판 테이블 구조 확인 | - | ✅ | 0ms | Table: 7 cols, 10 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 207ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1516ms | Detail checks: 0/1 matched | +| 8 | 글쓰기 버튼 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'W', "Write button: 글쓰기" is not valid JSON/raw:Write | +| 9 | 게시글 행 클릭 | - | ✅ | 302ms | Clicked (existed): table tbody tr:first-child | +| 10 | 게시글 상세 확인 | - | ⚠️ | 1515ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 314ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 페이지네이션 확인 | - | ✅ | 1ms | 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 | 74ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/board_mjsgri54_1fmg | diff --git a/e2e/results/hotfix/success/OK-company-info_2026-03-03_15-40-33.md b/e2e/results/hotfix/success/OK-company-info_2026-03-03_15-40-33.md new file mode 100644 index 0000000..f8ca00e --- /dev/null +++ b/e2e/results/hotfix/success/OK-company-info_2026-03-03_15-40-33.md @@ -0,0 +1,55 @@ +# ✅ E2E 테스트 성공: 설정 - 회사정보 + +**테스트 ID**: company-info | **실행**: 2026-03-03_15-40-33 | **결과**: PASS +**소요 시간**: 31.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 31 | 18 | 0 | 13 | 58% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2319ms | json_fail:Unexpected token 'm', "menu expanded" is not valid JSON/raw:menu expan | +| 2 | 1차 메뉴 찾기: 설정 | - | ✅ | 2525ms | Menu navigation: 설정 > 회사정보 | +| 3 | 페이지 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 4 | 404 에러 감지 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/company-info | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 0ms | Detail checks: 1/4 | +| 6 | 페이지 제목 확인 | - | ⚠️ | 1016ms | Element not found: heading | +| 7 | 회사 추가 버튼 존재 확인 | - | ⚠️ | 1017ms | Element not found: button[text='회사 추가'] | +| 8 | 수정 버튼 존재 확인 | - | ⚠️ | 1022ms | Element not found: button[text='수정'] | +| 9 | 회사명 필드 확인 | - | ⚠️ | 1010ms | Element not found: textbox[label='회사명'][disabled] | +| 10 | 대표자명 필드 확인 | - | ⚠️ | 1018ms | Element not found: textbox[label='대표자명'][disabled] | +| 11 | 업태 필드 확인 | - | ⚠️ | 1016ms | Element not found: textbox[label='업태'][disabled] | +| 12 | 업종 필드 확인 | - | ⚠️ | 1033ms | Element not found: textbox[label='업종'][disabled] | +| 13 | 주소 필드 확인 | - | ⚠️ | 1015ms | Element not found: textbox[label='주소명'][disabled] | +| 14 | 이메일 필드 확인 | - | ⚠️ | 1018ms | Element not found: textbox[label='이메일 (아이디)'][disabled] | +| 15 | 사업자등록번호 필드 확인 | - | ⚠️ | 1016ms | Element not found: textbox[label='사업자등록번호'][disabled] | +| 16 | 수정 버튼 클릭 | - | ✅ | 1ms | Element not present (ok): button[text='수정'] | +| 17 | 수정 모드 - 필드 활성화 확인 | - | ⚠️ | 1033ms | Element not found: textbox:not([disabled]) | +| 18 | 취소 버튼 클릭 | - | ✅ | 1ms | Element not present (ok): button[text='취소'] | +| 19 | 회사 추가 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='회사 추가'] | +| 20 | 회사 추가 다이얼로그 확인 | - | ⚠️ | 1033ms | Element not found: dialog | +| 21 | 다이얼로그 닫기 | - | ✅ | 1ms | Element not present (ok): dialog button[text='취소'] | +| 22 | 수정 모드에서 데이터 변경 테스트 | - | ✅ | 314ms | Clicked (existed): 수정 | +| 23 | 업태 필드 수정 | - | ✅ | 217ms | Filled "업태" with "테스트업태_수정" | +| 24 | 저장 버튼 클릭 | - | ✅ | 316ms | Clicked (existed): 저장 | +| 25 | ⚠️ 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 26 | 회사 추가 다이얼로그 열기 | - | ✅ | 314ms | Clicked (existed): 회사 추가 | +| 27 | 새 회사 정보 입력 | - | ✅ | 487ms | fill_form: 3/3 filled | +| 28 | 회사 등록 | - | ✅ | 314ms | Clicked (existed): 등록 | +| 29 | ⚠️ 필수 검증: 회사 등록 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 30 | 원복: 업태 필드 원래 값으로 복구 | - | ✅ | 3520ms | json_fail:Unexpected token 'r', "restored" is not valid JSON/raw:restored | +| 31 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 242ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/company-info | diff --git a/e2e/results/hotfix/success/OK-company-info_2026-03-03_21-37-36.md b/e2e/results/hotfix/success/OK-company-info_2026-03-03_21-37-36.md new file mode 100644 index 0000000..b1f6bfe --- /dev/null +++ b/e2e/results/hotfix/success/OK-company-info_2026-03-03_21-37-36.md @@ -0,0 +1,55 @@ +# ✅ E2E 테스트 성공: 설정 - 회사정보 + +**테스트 ID**: company-info | **실행**: 2026-03-03_21-37-36 | **결과**: PASS +**소요 시간**: 31.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 31 | 18 | 0 | 13 | 58% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2329ms | json_fail:Unexpected token 'm', "menu expanded" is not valid JSON/raw:menu expan | +| 2 | 1차 메뉴 찾기: 설정 | - | ✅ | 2532ms | Menu navigation: 설정 > 회사정보 | +| 3 | 페이지 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 4 | 404 에러 감지 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/company-info | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 0ms | Detail checks: 1/4 | +| 6 | 페이지 제목 확인 | - | ⚠️ | 1016ms | Element not found: heading | +| 7 | 회사 추가 버튼 존재 확인 | - | ⚠️ | 1002ms | Element not found: button[text='회사 추가'] | +| 8 | 수정 버튼 존재 확인 | - | ⚠️ | 1014ms | Element not found: button[text='수정'] | +| 9 | 회사명 필드 확인 | - | ⚠️ | 1005ms | Element not found: textbox[label='회사명'][disabled] | +| 10 | 대표자명 필드 확인 | - | ⚠️ | 1010ms | Element not found: textbox[label='대표자명'][disabled] | +| 11 | 업태 필드 확인 | - | ⚠️ | 1005ms | Element not found: textbox[label='업태'][disabled] | +| 12 | 업종 필드 확인 | - | ⚠️ | 1026ms | Element not found: textbox[label='업종'][disabled] | +| 13 | 주소 필드 확인 | - | ⚠️ | 1015ms | Element not found: textbox[label='주소명'][disabled] | +| 14 | 이메일 필드 확인 | - | ⚠️ | 1010ms | Element not found: textbox[label='이메일 (아이디)'][disabled] | +| 15 | 사업자등록번호 필드 확인 | - | ⚠️ | 1027ms | Element not found: textbox[label='사업자등록번호'][disabled] | +| 16 | 수정 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='수정'] | +| 17 | 수정 모드 - 필드 활성화 확인 | - | ⚠️ | 1004ms | Element not found: textbox:not([disabled]) | +| 18 | 취소 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='취소'] | +| 19 | 회사 추가 버튼 클릭 | - | ✅ | 1ms | Element not present (ok): button[text='회사 추가'] | +| 20 | 회사 추가 다이얼로그 확인 | - | ⚠️ | 1029ms | Element not found: dialog | +| 21 | 다이얼로그 닫기 | - | ✅ | 1ms | Element not present (ok): dialog button[text='취소'] | +| 22 | 수정 모드에서 데이터 변경 테스트 | - | ✅ | 318ms | Clicked (existed): 수정 | +| 23 | 업태 필드 수정 | - | ✅ | 216ms | Filled "업태" with "테스트업태_수정" | +| 24 | 저장 버튼 클릭 | - | ✅ | 313ms | Clicked (existed): 저장 | +| 25 | ⚠️ 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 26 | 회사 추가 다이얼로그 열기 | - | ✅ | 312ms | Clicked (existed): 회사 추가 | +| 27 | 새 회사 정보 입력 | - | ✅ | 482ms | fill_form: 3/3 filled | +| 28 | 회사 등록 | - | ✅ | 307ms | Clicked (existed): 등록 | +| 29 | ⚠️ 필수 검증: 회사 등록 반영 확인 | - | ✅ | 1ms | Element exists: body | +| 30 | 원복: 업태 필드 원래 값으로 복구 | - | ✅ | 3530ms | json_fail:Unexpected token 'r', "restored" is not valid JSON/raw:restored | +| 31 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 252ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/company-info | diff --git a/e2e/results/hotfix/success/OK-company-info_2026-03-03_22-37-47.md b/e2e/results/hotfix/success/OK-company-info_2026-03-03_22-37-47.md new file mode 100644 index 0000000..2fe6cf1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-company-info_2026-03-03_22-37-47.md @@ -0,0 +1,55 @@ +# ✅ E2E 테스트 성공: 설정 - 회사정보 + +**테스트 ID**: company-info | **실행**: 2026-03-03_22-37-47 | **결과**: PASS +**소요 시간**: 31.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 31 | 18 | 0 | 13 | 58% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2317ms | json_fail:Unexpected token 'm', "menu expanded" is not valid JSON/raw:menu expan | +| 2 | 1차 메뉴 찾기: 설정 | - | ✅ | 2530ms | Menu navigation: 설정 > 회사정보 | +| 3 | 페이지 로드 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 4 | 404 에러 감지 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/company-info | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 1ms | Detail checks: 1/4 | +| 6 | 페이지 제목 확인 | - | ⚠️ | 1017ms | Element not found: heading | +| 7 | 회사 추가 버튼 존재 확인 | - | ⚠️ | 1007ms | Element not found: button[text='회사 추가'] | +| 8 | 수정 버튼 존재 확인 | - | ⚠️ | 1011ms | Element not found: button[text='수정'] | +| 9 | 회사명 필드 확인 | - | ⚠️ | 1016ms | Element not found: textbox[label='회사명'][disabled] | +| 10 | 대표자명 필드 확인 | - | ⚠️ | 1014ms | Element not found: textbox[label='대표자명'][disabled] | +| 11 | 업태 필드 확인 | - | ⚠️ | 1016ms | Element not found: textbox[label='업태'][disabled] | +| 12 | 업종 필드 확인 | - | ⚠️ | 1003ms | Element not found: textbox[label='업종'][disabled] | +| 13 | 주소 필드 확인 | - | ⚠️ | 1016ms | Element not found: textbox[label='주소명'][disabled] | +| 14 | 이메일 필드 확인 | - | ⚠️ | 1018ms | Element not found: textbox[label='이메일 (아이디)'][disabled] | +| 15 | 사업자등록번호 필드 확인 | - | ⚠️ | 1032ms | Element not found: textbox[label='사업자등록번호'][disabled] | +| 16 | 수정 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='수정'] | +| 17 | 수정 모드 - 필드 활성화 확인 | - | ⚠️ | 1017ms | Element not found: textbox:not([disabled]) | +| 18 | 취소 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='취소'] | +| 19 | 회사 추가 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='회사 추가'] | +| 20 | 회사 추가 다이얼로그 확인 | - | ⚠️ | 1014ms | Element not found: dialog | +| 21 | 다이얼로그 닫기 | - | ✅ | 0ms | Element not present (ok): dialog button[text='취소'] | +| 22 | 수정 모드에서 데이터 변경 테스트 | - | ✅ | 318ms | Clicked (existed): 수정 | +| 23 | 업태 필드 수정 | - | ✅ | 203ms | Filled "업태" with "테스트업태_수정" | +| 24 | 저장 버튼 클릭 | - | ✅ | 314ms | Clicked (existed): 저장 | +| 25 | ⚠️ 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 26 | 회사 추가 다이얼로그 열기 | - | ✅ | 304ms | Clicked (existed): 회사 추가 | +| 27 | 새 회사 정보 입력 | - | ✅ | 492ms | fill_form: 3/3 filled | +| 28 | 회사 등록 | - | ✅ | 318ms | Clicked (existed): 등록 | +| 29 | ⚠️ 필수 검증: 회사 등록 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 30 | 원복: 업태 필드 원래 값으로 복구 | - | ✅ | 3539ms | json_fail:Unexpected token 'r', "restored" is not valid JSON/raw:restored | +| 31 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 231ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/company-info | diff --git a/e2e/results/hotfix/success/OK-company-info_2026-03-04_10-22-45.md b/e2e/results/hotfix/success/OK-company-info_2026-03-04_10-22-45.md new file mode 100644 index 0000000..97ba2ee --- /dev/null +++ b/e2e/results/hotfix/success/OK-company-info_2026-03-04_10-22-45.md @@ -0,0 +1,55 @@ +# ✅ E2E 테스트 성공: 설정 - 회사정보 + +**테스트 ID**: company-info | **실행**: 2026-03-04_10-22-45 | **결과**: PASS +**소요 시간**: 31.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 31 | 18 | 0 | 13 | 58% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2312ms | json_fail:Unexpected token 'm', "menu expanded" is not valid JSON/raw:menu expan | +| 2 | 1차 메뉴 찾기: 설정 | - | ✅ | 2524ms | Menu navigation: 설정 > 회사정보 | +| 3 | 페이지 로드 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 4 | 404 에러 감지 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/company-info | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 1ms | Detail checks: 1/4 | +| 6 | 페이지 제목 확인 | - | ⚠️ | 1020ms | Element not found: heading | +| 7 | 회사 추가 버튼 존재 확인 | - | ⚠️ | 1014ms | Element not found: button[text='회사 추가'] | +| 8 | 수정 버튼 존재 확인 | - | ⚠️ | 1019ms | Element not found: button[text='수정'] | +| 9 | 회사명 필드 확인 | - | ⚠️ | 1014ms | Element not found: textbox[label='회사명'][disabled] | +| 10 | 대표자명 필드 확인 | - | ⚠️ | 1017ms | Element not found: textbox[label='대표자명'][disabled] | +| 11 | 업태 필드 확인 | - | ⚠️ | 1017ms | Element not found: textbox[label='업태'][disabled] | +| 12 | 업종 필드 확인 | - | ⚠️ | 1018ms | Element not found: textbox[label='업종'][disabled] | +| 13 | 주소 필드 확인 | - | ⚠️ | 1015ms | Element not found: textbox[label='주소명'][disabled] | +| 14 | 이메일 필드 확인 | - | ⚠️ | 1022ms | Element not found: textbox[label='이메일 (아이디)'][disabled] | +| 15 | 사업자등록번호 필드 확인 | - | ⚠️ | 1010ms | Element not found: textbox[label='사업자등록번호'][disabled] | +| 16 | 수정 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='수정'] | +| 17 | 수정 모드 - 필드 활성화 확인 | - | ⚠️ | 1017ms | Element not found: textbox:not([disabled]) | +| 18 | 취소 버튼 클릭 | - | ✅ | 1ms | Element not present (ok): button[text='취소'] | +| 19 | 회사 추가 버튼 클릭 | - | ✅ | 1ms | Element not present (ok): button[text='회사 추가'] | +| 20 | 회사 추가 다이얼로그 확인 | - | ⚠️ | 1031ms | Element not found: dialog | +| 21 | 다이얼로그 닫기 | - | ✅ | 1ms | Element not present (ok): dialog button[text='취소'] | +| 22 | 수정 모드에서 데이터 변경 테스트 | - | ✅ | 309ms | Clicked (existed): 수정 | +| 23 | 업태 필드 수정 | - | ✅ | 214ms | Filled "업태" with "테스트업태_수정" | +| 24 | 저장 버튼 클릭 | - | ✅ | 309ms | Clicked (existed): 저장 | +| 25 | ⚠️ 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 26 | 회사 추가 다이얼로그 열기 | - | ✅ | 312ms | Clicked (existed): 회사 추가 | +| 27 | 새 회사 정보 입력 | - | ✅ | 483ms | fill_form: 3/3 filled | +| 28 | 회사 등록 | - | ✅ | 315ms | Clicked (existed): 등록 | +| 29 | ⚠️ 필수 검증: 회사 등록 반영 확인 | - | ✅ | 1ms | Element exists: body | +| 30 | 원복: 업태 필드 원래 값으로 복구 | - | ✅ | 3535ms | json_fail:Unexpected token 'r', "restored" is not valid JSON/raw:restored | +| 31 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 272ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/company-info | diff --git a/e2e/results/hotfix/success/OK-company-info_2026-03-04_22-56-12.md b/e2e/results/hotfix/success/OK-company-info_2026-03-04_22-56-12.md new file mode 100644 index 0000000..37592d7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-company-info_2026-03-04_22-56-12.md @@ -0,0 +1,55 @@ +# ✅ E2E 테스트 성공: 설정 - 회사정보 + +**테스트 ID**: company-info | **실행**: 2026-03-04_22-56-12 | **결과**: PASS +**소요 시간**: 38.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 31 | 18 | 0 | 13 | 58% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2311ms | json_fail:Unexpected token 'm', "menu expanded" is not valid JSON/raw:menu expan | +| 2 | 1차 메뉴 찾기: 설정 | - | ✅ | 2517ms | Menu navigation: 설정 > 회사정보 | +| 3 | 페이지 로드 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 4 | 404 에러 감지 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/company-info | +| 5 | 페이지 정상 로드 확인 | - | ✅ | 0ms | Detail checks: 1/4 | +| 6 | 페이지 제목 확인 | - | ⚠️ | 1528ms | Element not found: heading | +| 7 | 회사 추가 버튼 존재 확인 | - | ⚠️ | 1509ms | Element not found: button[text='회사 추가'] | +| 8 | 수정 버튼 존재 확인 | - | ⚠️ | 1514ms | Element not found: button[text='수정'] | +| 9 | 회사명 필드 확인 | - | ⚠️ | 1533ms | Element not found: textbox[label='회사명'][disabled] | +| 10 | 대표자명 필드 확인 | - | ⚠️ | 1515ms | Element not found: textbox[label='대표자명'][disabled] | +| 11 | 업태 필드 확인 | - | ⚠️ | 1511ms | Element not found: textbox[label='업태'][disabled] | +| 12 | 업종 필드 확인 | - | ⚠️ | 1521ms | Element not found: textbox[label='업종'][disabled] | +| 13 | 주소 필드 확인 | - | ⚠️ | 1504ms | Element not found: textbox[label='주소명'][disabled] | +| 14 | 이메일 필드 확인 | - | ⚠️ | 1515ms | Element not found: textbox[label='이메일 (아이디)'][disabled] | +| 15 | 사업자등록번호 필드 확인 | - | ⚠️ | 1516ms | Element not found: textbox[label='사업자등록번호'][disabled] | +| 16 | 수정 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='수정'] | +| 17 | 수정 모드 - 필드 활성화 확인 | - | ⚠️ | 1518ms | Element not found: textbox:not([disabled]) | +| 18 | 취소 버튼 클릭 | - | ✅ | 1ms | Element not present (ok): button[text='취소'] | +| 19 | 회사 추가 버튼 클릭 | - | ✅ | 0ms | Element not present (ok): button[text='회사 추가'] | +| 20 | 회사 추가 다이얼로그 확인 | - | ⚠️ | 1513ms | Element not found: dialog | +| 21 | 다이얼로그 닫기 | - | ✅ | 1ms | Element not present (ok): dialog button[text='취소'] | +| 22 | 수정 모드에서 데이터 변경 테스트 | - | ✅ | 312ms | Clicked (existed): 수정 | +| 23 | 업태 필드 수정 | - | ✅ | 220ms | Filled "업태" with "테스트업태_수정" | +| 24 | 저장 버튼 클릭 | - | ✅ | 316ms | Clicked (existed): 저장 | +| 25 | ⚠️ 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1508ms | Detail checks: 0/1 matched | +| 26 | 회사 추가 다이얼로그 열기 | - | ✅ | 309ms | Clicked (existed): 회사 추가 | +| 27 | 새 회사 정보 입력 | - | ✅ | 485ms | fill_form: 3/3 filled | +| 28 | 회사 등록 | - | ✅ | 304ms | Clicked (existed): 등록 | +| 29 | ⚠️ 필수 검증: 회사 등록 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 30 | 원복: 업태 필드 원래 값으로 복구 | - | ✅ | 3529ms | json_fail:Unexpected token 'r', "restored" is not valid JSON/raw:restored | +| 31 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 100ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/company-info | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_15-41-12.md b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_15-41-12.md new file mode 100644 index 0000000..f4a989e --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_15-41-12.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 어음관리 + +**테스트 ID**: create-delete-acc-bills | **실행**: 2026-03-03_15-41-12 | **결과**: PASS +**소요 시간**: 38.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8865ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1012ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6554ms | DELETE | +| 9 | [회계관리 > 어음관리] [DELETE] 삭제 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 12 | [회계관리 > 어음관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1003ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_21-38-14.md b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_21-38-14.md new file mode 100644 index 0000000..5a6a687 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_21-38-14.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 어음관리 + +**테스트 ID**: create-delete-acc-bills | **실행**: 2026-03-03_21-38-14 | **결과**: PASS +**소요 시간**: 38.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8866ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2012ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1016ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6548ms | DELETE | +| 9 | [회계관리 > 어음관리] [DELETE] 삭제 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 12 | [회계관리 > 어음관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1003ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_22-38-26.md b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_22-38-26.md new file mode 100644 index 0000000..913700d --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-03_22-38-26.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 어음관리 + +**테스트 ID**: create-delete-acc-bills | **실행**: 2026-03-03_22-38-26 | **결과**: PASS +**소요 시간**: 38.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8820ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1002ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6527ms | DELETE | +| 9 | [회계관리 > 어음관리] [DELETE] 삭제 후 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 12 | [회계관리 > 어음관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1013ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 72ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_10-23-23.md b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_10-23-23.md new file mode 100644 index 0000000..146a4fa --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_10-23-23.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 어음관리 + +**테스트 ID**: create-delete-acc-bills | **실행**: 2026-03-04_10-23-23 | **결과**: PASS +**소요 시간**: 38.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8852ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1007ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6533ms | DELETE | +| 9 | [회계관리 > 어음관리] [DELETE] 삭제 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 12 | [회계관리 > 어음관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1007ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 100ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_22-56-51.md b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_22-56-51.md new file mode 100644 index 0000000..4e9e4a5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-bills_2026-03-04_22-56-51.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 어음관리 + +**테스트 ID**: create-delete-acc-bills | **실행**: 2026-03-04_22-56-51 | **결과**: PASS +**소요 시간**: 38.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 2 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 어음관리] [CREATE] 데이터 생성 | CREATE | ✅ | 8819ms | CREATE | +| 4 | [회계관리 > 어음관리] [CREATE] 생성 후 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 5 | [회계관리 > 어음관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2006ms | evaluate ok | +| 6 | [회계관리 > 어음관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 7 | [회계관리 > 어음관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1015ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 어음관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6545ms | DELETE | +| 9 | [회계관리 > 어음관리] [DELETE] 삭제 후 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 어음관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 12 | [회계관리 > 어음관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1003ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 13 | 13 | 0 | 63ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/bills | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_15-41-48.md b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_15-41-48.md new file mode 100644 index 0000000..e98b42e --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_15-41-48.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 입금관리 + +**테스트 ID**: create-delete-acc-deposit | **실행**: 2026-03-03_15-41-48 | **결과**: PASS +**소요 시간**: 35.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 6183ms | CREATE | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2002ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1001ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6545ms | DELETE | +| 9 | [회계관리 > 입금관리] [DELETE] 삭제 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 10 | [회계관리 > 입금관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 12 | [회계관리 > 입금관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1002ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 15 | 15 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_21-38-50.md b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_21-38-50.md new file mode 100644 index 0000000..d80d014 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_21-38-50.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 입금관리 + +**테스트 ID**: create-delete-acc-deposit | **실행**: 2026-03-03_21-38-50 | **결과**: PASS +**소요 시간**: 35.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 6165ms | CREATE | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2009ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1002ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6531ms | DELETE | +| 9 | [회계관리 > 입금관리] [DELETE] 삭제 후 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 10 | [회계관리 > 입금관리] [DELETE] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2007ms | Waited 2000ms | +| 12 | [회계관리 > 입금관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1006ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 15 | 15 | 0 | 70ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_22-39-02.md b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_22-39-02.md new file mode 100644 index 0000000..84a4690 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-03_22-39-02.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 입금관리 + +**테스트 ID**: create-delete-acc-deposit | **실행**: 2026-03-03_22-39-02 | **결과**: PASS +**소요 시간**: 35.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 6198ms | CREATE | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1003ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6553ms | DELETE | +| 9 | [회계관리 > 입금관리] [DELETE] 삭제 후 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 10 | [회계관리 > 입금관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 12 | [회계관리 > 입금관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1001ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 15 | 15 | 0 | 65ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_10-23-59.md b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_10-23-59.md new file mode 100644 index 0000000..49fb4f7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_10-23-59.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 입금관리 + +**테스트 ID**: create-delete-acc-deposit | **실행**: 2026-03-04_10-23-59 | **결과**: PASS +**소요 시간**: 35.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 6173ms | CREATE | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2006ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1009ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6520ms | DELETE | +| 9 | [회계관리 > 입금관리] [DELETE] 삭제 후 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 10 | [회계관리 > 입금관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2009ms | Waited 2000ms | +| 12 | [회계관리 > 입금관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1004ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 15 | 15 | 0 | 70ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_22-57-27.md b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_22-57-27.md new file mode 100644 index 0000000..03ec529 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-acc-deposit_2026-03-04_22-57-27.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 입금관리 + +**테스트 ID**: create-delete-acc-deposit | **실행**: 2026-03-04_22-57-27 | **결과**: PASS +**소요 시간**: 35.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 입금관리] [CREATE] 데이터 생성 | CREATE | ✅ | 6166ms | CREATE | +| 4 | [회계관리 > 입금관리] [CREATE] 생성 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 5 | [회계관리 > 입금관리] [CREATE] 목록 복귀 | CREATE | ✅ | 2015ms | evaluate ok | +| 6 | [회계관리 > 입금관리] [CREATE] 목록 안정화 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 7 | [회계관리 > 입금관리] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1001ms | VERIFY_CREATE / rows:20 | +| 8 | [회계관리 > 입금관리] [DELETE] 데이터 삭제 | DELETE | ✅ | 6531ms | DELETE | +| 9 | [회계관리 > 입금관리] [DELETE] 삭제 후 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 10 | [회계관리 > 입금관리] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [회계관리 > 입금관리] [DELETE] 목록 안정화 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 12 | [회계관리 > 입금관리] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1003ms | VERIFY_DELETE / rows:27 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 15 | 15 | 0 | 92ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/Fail-create-delete-board_2026-02-27_16-03-38.md b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_15-42-30.md similarity index 52% rename from e2e/results/hotfix/Fail-create-delete-board_2026-02-27_16-03-38.md rename to e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_15-42-30.md index 7b9bc20..d52c0e5 100644 --- a/e2e/results/hotfix/Fail-create-delete-board_2026-02-27_16-03-38.md +++ b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_15-42-30.md @@ -1,55 +1,39 @@ -# ❌ E2E 테스트 실패: Create+Delete 테스트: 자유게시판 +# ✅ E2E 테스트 성공: Create+Delete 테스트: 자유게시판 -**테스트 ID**: create-delete-board | **실행**: 2026-02-27_16-03-38 | **결과**: FAIL -**소요 시간**: 41.0초 +**테스트 ID**: create-delete-board | **실행**: 2026-03-03_15-42-30 | **결과**: PASS +**소요 시간**: 42.1초 ## 테스트 요약 | 전체 | 성공 | 실패 | 경고 | 성공률 | |------|------|------|------|--------| -| 12 | 11 | 1 | 0 | 92% | - -## 실패 스텝 -| # | 스텝 | Phase | 에러 | -|---|------|-------|------| -| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | E2E_TEST_ 데이터가 여전히 존재 - 수동 삭제 필요 | +| 15 | 15 | 0 | 0 | 100% | ## 전체 스텝 결과 | # | 스텝 | Phase | 상태 | 소요시간 | 비고 | |---|------|-------|------|---------|------| -| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | -| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | -| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5954ms | CREATE | -| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3012ms | Waited 3000ms | -| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2016ms | evaluate ok | +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5931ms | CREATE | +| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2013ms | evaluate ok | | 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | -| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1017ms | VERIFY_CREATE / rows:10 | -| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 6529ms | DELETE | -| 9 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3002ms | Waited 3000ms | -| 10 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 2004ms | evaluate ok | -| 11 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2006ms | Waited 2000ms | -| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ❌ | 4023ms | E2E_TEST_ 데이터가 여전히 존재 - 수동 삭제 필요 | +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1003ms | VERIFY_CREATE / rows:10 | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 8037ms | DELETE | +| 9 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 100 | [게시판 > 자유게시판] [VERIFY] 삭제 후 새로고침 | - | ✅ | 2ms | Page reload | +| 101 | [게시판 > 자유게시판] [VERIFY] 새로고침 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 102 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1015ms | VERIFY_DELETE / rows:10 | ## API 요약 | 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | |---------|------|------|----------|--------------| -| 21 | 21 | 0 | 67ms | 0 | +| 0 | 0 | 0 | 0ms | 0 | ## 페이지 건강 검사 | 항목 | 결과 | |------|------| | 상태 | ✅ 정상 | | URL | https://dev.codebridge-x.com/boards/free | - -## 자동 진단 -| 항목 | 내용 | -|------|------| -| 근본 원인 | **unknown** | -| 스크린샷 | diag_create-delete-board_2026-02-27_16-03-38.png | - -### 페이지 상태 -| 항목 | 값 | -|------|----| -| DOM 노드 | 915 | -| 테이블 행 | 10 | -| API 호출 수 | 0 | -| 로딩 스피너 | No | diff --git a/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_21-39-32.md b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_21-39-32.md new file mode 100644 index 0000000..19d19cf --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_21-39-32.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 자유게시판 + +**테스트 ID**: create-delete-board | **실행**: 2026-03-03_21-39-32 | **결과**: PASS +**소요 시간**: 42.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5935ms | CREATE | +| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2009ms | evaluate ok | +| 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2006ms | Waited 2000ms | +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1002ms | VERIFY_CREATE / rows:10 | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 8032ms | DELETE | +| 9 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 100 | [게시판 > 자유게시판] [VERIFY] 삭제 후 새로고침 | - | ✅ | 2ms | Page reload | +| 101 | [게시판 > 자유게시판] [VERIFY] 새로고침 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 102 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1010ms | VERIFY_DELETE / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_22-39-44.md b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_22-39-44.md new file mode 100644 index 0000000..934610c --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-03_22-39-44.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 자유게시판 + +**테스트 ID**: create-delete-board | **실행**: 2026-03-03_22-39-44 | **결과**: PASS +**소요 시간**: 42.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5953ms | CREATE | +| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2018ms | evaluate ok | +| 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1008ms | VERIFY_CREATE / rows:10 | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 8033ms | DELETE | +| 9 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 100 | [게시판 > 자유게시판] [VERIFY] 삭제 후 새로고침 | - | ✅ | 2ms | Page reload | +| 101 | [게시판 > 자유게시판] [VERIFY] 새로고침 대기 | - | ✅ | 3015ms | Waited 3000ms | +| 102 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1016ms | VERIFY_DELETE / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_10-24-41.md b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_10-24-41.md new file mode 100644 index 0000000..9b94a5e --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_10-24-41.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 자유게시판 + +**테스트 ID**: create-delete-board | **실행**: 2026-03-04_10-24-41 | **결과**: PASS +**소요 시간**: 42.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5956ms | CREATE | +| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2003ms | evaluate ok | +| 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2007ms | Waited 2000ms | +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1003ms | VERIFY_CREATE / rows:10 | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 8034ms | DELETE | +| 9 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 0ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2009ms | Waited 2000ms | +| 100 | [게시판 > 자유게시판] [VERIFY] 삭제 후 새로고침 | - | ✅ | 2ms | Page reload | +| 101 | [게시판 > 자유게시판] [VERIFY] 새로고침 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 102 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1010ms | VERIFY_DELETE / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_22-58-09.md b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_22-58-09.md new file mode 100644 index 0000000..6f2fe70 --- /dev/null +++ b/e2e/results/hotfix/success/OK-create-delete-board_2026-03-04_22-58-09.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: Create+Delete 테스트: 자유게시판 + +**테스트 ID**: create-delete-board | **실행**: 2026-03-04_22-58-09 | **결과**: PASS +**소요 시간**: 42.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | [게시판 > 자유게시판] [CREATE] 데이터 생성 | CREATE | ✅ | 5923ms | CREATE | +| 4 | [게시판 > 자유게시판] [CREATE] 생성 후 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 5 | [게시판 > 자유게시판] [CREATE] 목록 복귀 | CREATE | ✅ | 2004ms | evaluate ok | +| 6 | [게시판 > 자유게시판] [CREATE] 목록 안정화 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 7 | [게시판 > 자유게시판] [VERIFY] 생성 데이터 확인 | VERIFY | ✅ | 1004ms | VERIFY_CREATE / rows:10 | +| 8 | [게시판 > 자유게시판] [DELETE] 데이터 삭제 | DELETE | ✅ | 8016ms | DELETE | +| 9 | [게시판 > 자유게시판] [DELETE] 삭제 후 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] [DELETE] 목록 복귀 | DELETE | ✅ | 1ms | evaluate ok | +| 11 | [게시판 > 자유게시판] [DELETE] 목록 안정화 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 100 | [게시판 > 자유게시판] [VERIFY] 삭제 후 새로고침 | - | ✅ | 2ms | Page reload | +| 101 | [게시판 > 자유게시판] [VERIFY] 새로고침 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 102 | [게시판 > 자유게시판] [VERIFY] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 12 | [게시판 > 자유게시판] [VERIFY] 삭제 확인 | VERIFY | ✅ | 1003ms | VERIFY_DELETE / rows:10 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_15-43-09.md b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_15-43-09.md new file mode 100644 index 0000000..877e8ee --- /dev/null +++ b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_15-43-09.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) + +**테스트 ID**: cross-module-data-consistency | **실행**: 2026-03-03_15-43-09 | **결과**: PASS +**소요 시간**: 39.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | [판매 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매 > 거래처관리] 거래처명 캡처 | CAPTURE_VENDOR | ✅ | 1514ms | CAPTURE_VENDOR / rows:20 | +| 4 | [회계 > 거래처관리] 메뉴 이동 | - | ✅ | 2516ms | Menu navigation: 회계관리 > 거래처관리 | +| 5 | [회계 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 6 | [회계 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 7 | [회계 > 거래처관리] 거래처 존재 확인 | VERIFY_VENDOR_ACC | ✅ | 6254ms | VERIFY_VENDOR_ACC / ✅ 판매/회계 거래처 데이터 일치 확인: 00B58F04 / vendor:true / rows:1 | +| 8 | [판매 > 단가관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 판매관리 > 단가관리 | +| 9 | [판매 > 단가관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 10 | [판매 > 단가관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매 > 단가관리] 품목명 캡처 | CAPTURE_ITEM | ✅ | 1513ms | CAPTURE_ITEM / rows:20 | +| 12 | [생산 > 품목관리] 메뉴 이동 | - | ✅ | 2521ms | Menu navigation: 생산관리 > 품목관리 | +| 13 | [생산 > 품목관리] 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 14 | [생산 > 품목관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 15 | [생산 > 품목관리] 품목 존재 확인 | VERIFY_ITEM_PROD | ✅ | 6266ms | VERIFY_ITEM_PROD / ✅ 판매/생산 품목 데이터 일치 확인: 00B58F04 / item:true / rows:1 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 66ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_21-40-11.md b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_21-40-11.md new file mode 100644 index 0000000..cd1dc46 --- /dev/null +++ b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_21-40-11.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) + +**테스트 ID**: cross-module-data-consistency | **실행**: 2026-03-03_21-40-11 | **결과**: PASS +**소요 시간**: 39.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | [판매 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매 > 거래처관리] 거래처명 캡처 | CAPTURE_VENDOR | ✅ | 1503ms | CAPTURE_VENDOR / rows:20 | +| 4 | [회계 > 거래처관리] 메뉴 이동 | - | ✅ | 2530ms | Menu navigation: 회계관리 > 거래처관리 | +| 5 | [회계 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3018ms | Waited 3000ms | +| 6 | [회계 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 7 | [회계 > 거래처관리] 거래처 존재 확인 | VERIFY_VENDOR_ACC | ✅ | 6241ms | VERIFY_VENDOR_ACC / ✅ 판매/회계 거래처 데이터 일치 확인: 00B58F04 / vendor:true / rows:1 | +| 8 | [판매 > 단가관리] 메뉴 이동 | - | ✅ | 530ms | Menu navigation: 판매관리 > 단가관리 | +| 9 | [판매 > 단가관리] 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 10 | [판매 > 단가관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매 > 단가관리] 품목명 캡처 | CAPTURE_ITEM | ✅ | 1507ms | CAPTURE_ITEM / rows:20 | +| 12 | [생산 > 품목관리] 메뉴 이동 | - | ✅ | 2529ms | Menu navigation: 생산관리 > 품목관리 | +| 13 | [생산 > 품목관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 14 | [생산 > 품목관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 15 | [생산 > 품목관리] 품목 존재 확인 | VERIFY_ITEM_PROD | ✅ | 6249ms | VERIFY_ITEM_PROD / ✅ 판매/생산 품목 데이터 일치 확인: 00B58F04 / item:true / rows:1 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 79ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_22-40-23.md b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_22-40-23.md new file mode 100644 index 0000000..1297139 --- /dev/null +++ b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-03_22-40-23.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) + +**테스트 ID**: cross-module-data-consistency | **실행**: 2026-03-03_22-40-23 | **결과**: PASS +**소요 시간**: 39.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | [판매 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매 > 거래처관리] 거래처명 캡처 | CAPTURE_VENDOR | ✅ | 1516ms | CAPTURE_VENDOR / rows:20 | +| 4 | [회계 > 거래처관리] 메뉴 이동 | - | ✅ | 2531ms | Menu navigation: 회계관리 > 거래처관리 | +| 5 | [회계 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 6 | [회계 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 7 | [회계 > 거래처관리] 거래처 존재 확인 | VERIFY_VENDOR_ACC | ✅ | 6237ms | VERIFY_VENDOR_ACC / ✅ 판매/회계 거래처 데이터 일치 확인: 00B58F04 / vendor:true / rows:1 | +| 8 | [판매 > 단가관리] 메뉴 이동 | - | ✅ | 517ms | Menu navigation: 판매관리 > 단가관리 | +| 9 | [판매 > 단가관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 10 | [판매 > 단가관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 11 | [판매 > 단가관리] 품목명 캡처 | CAPTURE_ITEM | ✅ | 1504ms | CAPTURE_ITEM / rows:20 | +| 12 | [생산 > 품목관리] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 생산관리 > 품목관리 | +| 13 | [생산 > 품목관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 14 | [생산 > 품목관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 15 | [생산 > 품목관리] 품목 존재 확인 | VERIFY_ITEM_PROD | ✅ | 6248ms | VERIFY_ITEM_PROD / ✅ 판매/생산 품목 데이터 일치 확인: 00B58F04 / item:true / rows:1 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 79ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_10-25-21.md b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_10-25-21.md new file mode 100644 index 0000000..69ed353 --- /dev/null +++ b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_10-25-21.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) + +**테스트 ID**: cross-module-data-consistency | **실행**: 2026-03-04_10-25-21 | **결과**: PASS +**소요 시간**: 39.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | [판매 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매 > 거래처관리] 거래처명 캡처 | CAPTURE_VENDOR | ✅ | 1502ms | CAPTURE_VENDOR / rows:20 | +| 4 | [회계 > 거래처관리] 메뉴 이동 | - | ✅ | 2523ms | Menu navigation: 회계관리 > 거래처관리 | +| 5 | [회계 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 6 | [회계 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 7 | [회계 > 거래처관리] 거래처 존재 확인 | VERIFY_VENDOR_ACC | ✅ | 6244ms | VERIFY_VENDOR_ACC / ✅ 판매/회계 거래처 데이터 일치 확인: 00B58F04 / vendor:true / rows:1 | +| 8 | [판매 > 단가관리] 메뉴 이동 | - | ✅ | 510ms | Menu navigation: 판매관리 > 단가관리 | +| 9 | [판매 > 단가관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 10 | [판매 > 단가관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 11 | [판매 > 단가관리] 품목명 캡처 | CAPTURE_ITEM | ✅ | 1509ms | CAPTURE_ITEM / rows:20 | +| 12 | [생산 > 품목관리] 메뉴 이동 | - | ✅ | 2524ms | Menu navigation: 생산관리 > 품목관리 | +| 13 | [생산 > 품목관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 14 | [생산 > 품목관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 15 | [생산 > 품목관리] 품목 존재 확인 | VERIFY_ITEM_PROD | ✅ | 6233ms | VERIFY_ITEM_PROD / ✅ 판매/생산 품목 데이터 일치 확인: 00B58F04 / item:true / rows:1 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 113ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_22-58-48.md b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_22-58-48.md new file mode 100644 index 0000000..f547534 --- /dev/null +++ b/e2e/results/hotfix/success/OK-cross-module-data-consistency_2026-03-04_22-58-48.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 모듈 간 데이터 일관성 검증 (판매↔회계, 판매↔생산) + +**테스트 ID**: cross-module-data-consistency | **실행**: 2026-03-04_22-58-48 | **결과**: PASS +**소요 시간**: 39.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | [판매 > 거래처관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [판매 > 거래처관리] 거래처명 캡처 | CAPTURE_VENDOR | ✅ | 1513ms | CAPTURE_VENDOR / rows:20 | +| 4 | [회계 > 거래처관리] 메뉴 이동 | - | ✅ | 2525ms | Menu navigation: 회계관리 > 거래처관리 | +| 5 | [회계 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 6 | [회계 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 7 | [회계 > 거래처관리] 거래처 존재 확인 | VERIFY_VENDOR_ACC | ✅ | 6239ms | VERIFY_VENDOR_ACC / ✅ 판매/회계 거래처 데이터 일치 확인: 00B58F04 / vendor:true / rows:1 | +| 8 | [판매 > 단가관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 판매관리 > 단가관리 | +| 9 | [판매 > 단가관리] 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 10 | [판매 > 단가관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매 > 단가관리] 품목명 캡처 | CAPTURE_ITEM | ✅ | 1516ms | CAPTURE_ITEM / rows:20 | +| 12 | [생산 > 품목관리] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 생산관리 > 품목관리 | +| 13 | [생산 > 품목관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 14 | [생산 > 품목관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 15 | [생산 > 품목관리] 품목 존재 확인 | VERIFY_ITEM_PROD | ✅ | 6247ms | VERIFY_ITEM_PROD / ✅ 판매/생산 품목 데이터 일치 확인: 00B58F04 / item:true / rows:1 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 123ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-customer-event_2026-03-03_15-43-23.md b/e2e/results/hotfix/success/OK-customer-event_2026-03-03_15-43-23.md new file mode 100644 index 0000000..6fcae98 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-event_2026-03-03_15-43-23.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 이벤트 게시판 테스트 + +**테스트 ID**: customer-event | **실행**: 2026-03-03_15-43-23 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 이벤트 게시판 | - | ✅ | 510ms | 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 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 3 cards found" is not valid JSON/raw:Sta | +| 5 | 이벤트 페이지 구조 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 6 | [READ] 이벤트 목록 데이터 확인 | READ | ⚠️ | 1013ms | Detail checks: 0/1 matched | +| 7 | [FILTER] 상태별 필터 | FILTER | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [READ] 이벤트 상세 보기 | READ | ✅ | 313ms | Clicked (existed): [class*='event']:first-child, table tbody tr:first-child, [cl | +| 9 | 이벤트 상세 정보 확인 | - | ⚠️ | 1015ms | Detail checks: 0/4 matched | +| 10 | 이벤트 참여 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 11 | 공유 기능 확인 | - | ⚠️ | 1002ms | Checks: 0/1 verified | +| 12 | 목록으로 돌아가기 | - | ✅ | 316ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 13 | 페이지네이션 확인 | - | ⚠️ | 1001ms | Checks: 0/1 verified | +| 14 | 테이블 행 클릭 - 상세 페이지 이동 | - | ✅ | 509ms | Clicked first row | +| 15 | 상세 페이지 로딩 대기 | - | ✅ | 1005ms | Waited 1000ms | +| 16 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'D', "Detail pag"... is not valid JSON/raw:Detail pag | +| 17 | 모달/상세 닫기 | - | ✅ | 0ms | No modal open | +| 18 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 19 | 이벤트 기간 정보 확인 | - | ⚠️ | 1029ms | Detail checks: 0/2 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/events | diff --git a/e2e/results/hotfix/success/OK-customer-event_2026-03-03_21-40-25.md b/e2e/results/hotfix/success/OK-customer-event_2026-03-03_21-40-25.md new file mode 100644 index 0000000..8da2eb7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-event_2026-03-03_21-40-25.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 이벤트 게시판 테스트 + +**테스트 ID**: customer-event | **실행**: 2026-03-03_21-40-25 | **결과**: PASS +**소요 시간**: 13.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 이벤트 게시판 | - | ✅ | 514ms | 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 | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 7 | [FILTER] 상태별 필터 | FILTER | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [READ] 이벤트 상세 보기 | READ | ✅ | 304ms | Clicked (existed): [class*='event']:first-child, table tbody tr:first-child, [cl | +| 9 | 이벤트 상세 정보 확인 | - | ⚠️ | 1015ms | Detail checks: 0/4 matched | +| 10 | 이벤트 참여 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 11 | 공유 기능 확인 | - | ⚠️ | 1017ms | Checks: 0/1 verified | +| 12 | 목록으로 돌아가기 | - | ✅ | 318ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 13 | 페이지네이션 확인 | - | ⚠️ | 1009ms | Checks: 0/1 verified | +| 14 | 테이블 행 클릭 - 상세 페이지 이동 | - | ✅ | 502ms | Clicked first row | +| 15 | 상세 페이지 로딩 대기 | - | ✅ | 1003ms | Waited 1000ms | +| 16 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 1ms | 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 | 이벤트 기간 정보 확인 | - | ⚠️ | 1015ms | Detail checks: 0/2 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/events | diff --git a/e2e/results/hotfix/success/OK-customer-event_2026-03-03_22-40-37.md b/e2e/results/hotfix/success/OK-customer-event_2026-03-03_22-40-37.md new file mode 100644 index 0000000..0e5e1ec --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-event_2026-03-03_22-40-37.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 이벤트 게시판 테스트 + +**테스트 ID**: customer-event | **실행**: 2026-03-03_22-40-37 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 이벤트 게시판 | - | ✅ | 521ms | 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 | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 7 | [FILTER] 상태별 필터 | FILTER | ✅ | 0ms | Checks: 1/1 verified | +| 8 | [READ] 이벤트 상세 보기 | READ | ✅ | 317ms | Clicked (existed): [class*='event']:first-child, table tbody tr:first-child, [cl | +| 9 | 이벤트 상세 정보 확인 | - | ⚠️ | 1012ms | Detail checks: 0/4 matched | +| 10 | 이벤트 참여 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 11 | 공유 기능 확인 | - | ⚠️ | 1003ms | Checks: 0/1 verified | +| 12 | 목록으로 돌아가기 | - | ✅ | 315ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 13 | 페이지네이션 확인 | - | ⚠️ | 1018ms | Checks: 0/1 verified | +| 14 | 테이블 행 클릭 - 상세 페이지 이동 | - | ✅ | 514ms | Clicked first row | +| 15 | 상세 페이지 로딩 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 16 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 1ms | 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 | 이벤트 기간 정보 확인 | - | ⚠️ | 1007ms | Detail checks: 0/2 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/events | diff --git a/e2e/results/hotfix/success/OK-customer-event_2026-03-04_10-25-34.md b/e2e/results/hotfix/success/OK-customer-event_2026-03-04_10-25-34.md new file mode 100644 index 0000000..eb3229e --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-event_2026-03-04_10-25-34.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 이벤트 게시판 테스트 + +**테스트 ID**: customer-event | **실행**: 2026-03-04_10-25-34 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 이벤트 게시판 | - | ✅ | 504ms | 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 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 3 cards found" is not valid JSON/raw:Sta | +| 5 | 이벤트 페이지 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 이벤트 목록 데이터 확인 | READ | ⚠️ | 1018ms | Detail checks: 0/1 matched | +| 7 | [FILTER] 상태별 필터 | FILTER | ✅ | 1ms | Checks: 1/1 verified | +| 8 | [READ] 이벤트 상세 보기 | READ | ✅ | 310ms | Clicked (existed): [class*='event']:first-child, table tbody tr:first-child, [cl | +| 9 | 이벤트 상세 정보 확인 | - | ⚠️ | 1013ms | Detail checks: 0/4 matched | +| 10 | 이벤트 참여 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 11 | 공유 기능 확인 | - | ⚠️ | 1016ms | Checks: 0/1 verified | +| 12 | 목록으로 돌아가기 | - | ✅ | 304ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 13 | 페이지네이션 확인 | - | ⚠️ | 1016ms | Checks: 0/1 verified | +| 14 | 테이블 행 클릭 - 상세 페이지 이동 | - | ✅ | 503ms | Clicked first row | +| 15 | 상세 페이지 로딩 대기 | - | ✅ | 1011ms | 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 | 이벤트 기간 정보 확인 | - | ⚠️ | 1006ms | Detail checks: 0/2 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/events | diff --git a/e2e/results/hotfix/success/OK-customer-event_2026-03-04_22-59-04.md b/e2e/results/hotfix/success/OK-customer-event_2026-03-04_22-59-04.md new file mode 100644 index 0000000..af5f448 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-event_2026-03-04_22-59-04.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 이벤트 게시판 테스트 + +**테스트 ID**: customer-event | **실행**: 2026-03-04_22-59-04 | **결과**: PASS +**소요 시간**: 16.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 14 | 0 | 5 | 74% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 이벤트 게시판 | - | ✅ | 511ms | 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 | 통계 카드 확인 | - | ✅ | 0ms | json_fail:Unexpected token 'S', "Stats: 3 cards found" is not valid JSON/raw:Sta | +| 5 | 이벤트 페이지 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 이벤트 목록 데이터 확인 | READ | ⚠️ | 1520ms | 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 | 이벤트 상세 정보 확인 | - | ⚠️ | 1517ms | Detail checks: 0/4 matched | +| 10 | 이벤트 참여 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 11 | 공유 기능 확인 | - | ⚠️ | 1517ms | Checks: 0/1 verified | +| 12 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 13 | 페이지네이션 확인 | - | ⚠️ | 1505ms | Checks: 0/1 verified | +| 14 | 테이블 행 클릭 - 상세 페이지 이동 | - | ✅ | 505ms | Clicked first row | +| 15 | 상세 페이지 로딩 대기 | - | ✅ | 1008ms | Waited 1000ms | +| 16 | 상세 페이지 - 콘텐츠 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'D', "Detail pag"... is not valid JSON/raw:Detail pag | +| 17 | 모달/상세 닫기 | - | ✅ | 1ms | No modal open | +| 18 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 19 | 이벤트 기간 정보 확인 | - | ⚠️ | 1512ms | Detail checks: 0/2 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/events | diff --git a/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_15-43-34.md b/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_15-43-34.md new file mode 100644 index 0000000..de37307 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_15-43-34.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: FAQ 테스트 + +**테스트 ID**: customer-faq | **실행**: 2026-03-03_15-43-34 | **결과**: PASS +**소요 시간**: 11.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > FAQ | - | ✅ | 517ms | Menu navigation: 고객센터 > FAQ | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/customer-center/faq | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 29 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | 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 | ⚠️ | 1012ms | Detail checks: 0/1 matched | +| 7 | [READ] FAQ 항목 펼치기 | READ | ✅ | 1ms | Element not present (ok): [class*='accordion']:first-child, [class*='faq']:first | +| 8 | FAQ 답변 내용 확인 | - | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 9 | [FILTER] 카테고리 필터 | FILTER | ✅ | 2ms | Element exists: [class*='category'], [class*='tab'] | +| 10 | [FILTER] 카테고리 선택 후 결과 | FILTER | ⚠️ | 1027ms | Detail checks: 0/1 matched | +| 11 | [SEARCH] FAQ 검색 | SEARCH | ✅ | 318ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 12 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 13 | FAQ 접기/펼치기 토글 | - | ✅ | 1ms | Checks: 1/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 2ms | 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/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_21-40-36.md b/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_21-40-36.md new file mode 100644 index 0000000..5a36dc3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_21-40-36.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: FAQ 테스트 + +**테스트 ID**: customer-faq | **실행**: 2026-03-03_21-40-36 | **결과**: PASS +**소요 시간**: 11.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > FAQ | - | ✅ | 508ms | 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 | 통계 카드 확인 | - | ✅ | 1ms | 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 | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 7 | [READ] FAQ 항목 펼치기 | READ | ✅ | 1ms | Element not present (ok): [class*='accordion']:first-child, [class*='faq']:first | +| 8 | FAQ 답변 내용 확인 | - | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 9 | [FILTER] 카테고리 필터 | FILTER | ✅ | 2ms | Element exists: [class*='category'], [class*='tab'] | +| 10 | [FILTER] 카테고리 선택 후 결과 | FILTER | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 11 | [SEARCH] FAQ 검색 | SEARCH | ✅ | 311ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 12 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1005ms | Detail checks: 0/1 matched | +| 13 | FAQ 접기/펼치기 토글 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 2ms | 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/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_22-40-48.md b/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_22-40-48.md new file mode 100644 index 0000000..6ddfc95 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-faq_2026-03-03_22-40-48.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: FAQ 테스트 + +**테스트 ID**: customer-faq | **실행**: 2026-03-03_22-40-48 | **결과**: PASS +**소요 시간**: 10.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > FAQ | - | ✅ | 512ms | Menu navigation: 고객센터 > FAQ | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/faq | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 29 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 7 cards found" is not valid JSON/raw:Sta | +| 5 | FAQ 페이지 구조 확인 | - | ✅ | 1ms | Checks: 2/3 verified | +| 6 | [READ] FAQ 목록 데이터 확인 | READ | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 7 | [READ] FAQ 항목 펼치기 | READ | ✅ | 2ms | Element not present (ok): [class*='accordion']:first-child, [class*='faq']:first | +| 8 | FAQ 답변 내용 확인 | - | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 9 | [FILTER] 카테고리 필터 | FILTER | ✅ | 0ms | Element exists: [class*='category'], [class*='tab'] | +| 10 | [FILTER] 카테고리 선택 후 결과 | FILTER | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 11 | [SEARCH] FAQ 검색 | SEARCH | ✅ | 317ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 12 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1001ms | Detail checks: 0/1 matched | +| 13 | FAQ 접기/펼치기 토글 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 2ms | 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/e2e/results/hotfix/success/OK-customer-faq_2026-03-04_10-25-45.md b/e2e/results/hotfix/success/OK-customer-faq_2026-03-04_10-25-45.md new file mode 100644 index 0000000..5fd97e6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-faq_2026-03-04_10-25-45.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: FAQ 테스트 + +**테스트 ID**: customer-faq | **실행**: 2026-03-04_10-25-45 | **결과**: PASS +**소요 시간**: 11.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > FAQ | - | ✅ | 503ms | Menu navigation: 고객센터 > FAQ | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/faq | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 29 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | 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 | ⚠️ | 1007ms | Detail checks: 0/1 matched | +| 7 | [READ] FAQ 항목 펼치기 | READ | ✅ | 2ms | Element not present (ok): [class*='accordion']:first-child, [class*='faq']:first | +| 8 | FAQ 답변 내용 확인 | - | ⚠️ | 1008ms | Detail checks: 0/1 matched | +| 9 | [FILTER] 카테고리 필터 | FILTER | ✅ | 1ms | Element exists: [class*='category'], [class*='tab'] | +| 10 | [FILTER] 카테고리 선택 후 결과 | FILTER | ⚠️ | 1010ms | Detail checks: 0/1 matched | +| 11 | [SEARCH] FAQ 검색 | SEARCH | ✅ | 317ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 12 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1033ms | Detail checks: 0/1 matched | +| 13 | FAQ 접기/펼치기 토글 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 2ms | 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/e2e/results/hotfix/success/OK-customer-faq_2026-03-04_22-59-17.md b/e2e/results/hotfix/success/OK-customer-faq_2026-03-04_22-59-17.md new file mode 100644 index 0000000..2dee5d0 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-faq_2026-03-04_22-59-17.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: FAQ 테스트 + +**테스트 ID**: customer-faq | **실행**: 2026-03-04_22-59-17 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > FAQ | - | ✅ | 506ms | Menu navigation: 고객센터 > FAQ | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/faq | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 29 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | 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 | ⚠️ | 1502ms | Detail checks: 0/1 matched | +| 7 | [READ] FAQ 항목 펼치기 | READ | ✅ | 2ms | Element not present (ok): [class*='accordion']:first-child, [class*='faq']:first | +| 8 | FAQ 답변 내용 확인 | - | ⚠️ | 1511ms | Detail checks: 0/1 matched | +| 9 | [FILTER] 카테고리 필터 | FILTER | ✅ | 1ms | Element exists: [class*='category'], [class*='tab'] | +| 10 | [FILTER] 카테고리 선택 후 결과 | FILTER | ⚠️ | 1514ms | Detail checks: 0/1 matched | +| 11 | [SEARCH] FAQ 검색 | SEARCH | ✅ | 313ms | Clicked (existed): input[type='search'], input[placeholder*='검색'] | +| 12 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1504ms | Detail checks: 0/1 matched | +| 13 | FAQ 접기/펼치기 토글 | - | ✅ | 0ms | Checks: 1/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 1ms | 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/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_15-43-48.md b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_15-43-48.md new file mode 100644 index 0000000..e0e6ca0 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_15-43-48.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 1:1 문의 테스트 + +**테스트 ID**: customer-inquiry | **실행**: 2026-03-03_15-43-48 | **결과**: PASS +**소요 시간**: 14.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 1:1 문의 | - | ✅ | 2526ms | Menu navigation: 고객센터 > 1:1 문의 | +| 2 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 46 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 문의 목록 구조 확인 | - | ✅ | 1ms | Table: 6 cols, 3 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 215ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1005ms | Detail checks: 0/1 matched | +| 8 | 문의하기 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'I', "Inquiry bu"... is not valid JSON/raw:Inquiry bu | +| 9 | 문의 행 클릭 | - | ✅ | 310ms | Clicked (existed): table tbody tr:first-child | +| 10 | 문의 상세 확인 | - | ⚠️ | 1001ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 316ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 54ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/qna | diff --git a/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_21-40-51.md b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_21-40-51.md new file mode 100644 index 0000000..19f2520 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_21-40-51.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 1:1 문의 테스트 + +**테스트 ID**: customer-inquiry | **실행**: 2026-03-03_21-40-51 | **결과**: PASS +**소요 시간**: 14.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 1:1 문의 | - | ✅ | 2525ms | Menu navigation: 고객센터 > 1:1 문의 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 46 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 문의 목록 구조 확인 | - | ✅ | 1ms | Table: 6 cols, 3 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 217ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 8 | 문의하기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'I', "Inquiry bu"... is not valid JSON/raw:Inquiry bu | +| 9 | 문의 행 클릭 | - | ✅ | 303ms | Clicked (existed): table tbody tr:first-child | +| 10 | 문의 상세 확인 | - | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 311ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/qna | diff --git a/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_22-41-02.md b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_22-41-02.md new file mode 100644 index 0000000..cef9421 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-03_22-41-02.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 1:1 문의 테스트 + +**테스트 ID**: customer-inquiry | **실행**: 2026-03-03_22-41-02 | **결과**: PASS +**소요 시간**: 14.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 1:1 문의 | - | ✅ | 2511ms | Menu navigation: 고객센터 > 1:1 문의 | +| 2 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 46 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 문의 목록 구조 확인 | - | ✅ | 0ms | Table: 6 cols, 3 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 213ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 8 | 문의하기 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'I', "Inquiry bu"... is not valid JSON/raw:Inquiry bu | +| 9 | 문의 행 클릭 | - | ✅ | 308ms | Clicked (existed): table tbody tr:first-child | +| 10 | 문의 상세 확인 | - | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 80ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/qna | diff --git a/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_10-26-00.md b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_10-26-00.md new file mode 100644 index 0000000..55c8a08 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_10-26-00.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 1:1 문의 테스트 + +**테스트 ID**: customer-inquiry | **실행**: 2026-03-04_10-26-00 | **결과**: PASS +**소요 시간**: 14.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 1:1 문의 | - | ✅ | 2511ms | Menu navigation: 고객센터 > 1:1 문의 | +| 2 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 46 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 3 rows | +| 5 | 문의 목록 구조 확인 | - | ✅ | 1ms | Table: 6 cols, 3 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 213ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 8 | 문의하기 버튼 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'I', "Inquiry bu"... is not valid JSON/raw:Inquiry bu | +| 9 | 문의 행 클릭 | - | ✅ | 305ms | Clicked (existed): table tbody tr:first-child | +| 10 | 문의 상세 확인 | - | ⚠️ | 1026ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 303ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 78ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/qna | diff --git a/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_22-59-33.md b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_22-59-33.md new file mode 100644 index 0000000..77259d4 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-inquiry_2026-03-04_22-59-33.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 1:1 문의 테스트 + +**테스트 ID**: customer-inquiry | **실행**: 2026-03-04_22-59-33 | **결과**: PASS +**소요 시간**: 15.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 10 | 0 | 2 | 83% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 1:1 문의 | - | ✅ | 2508ms | Menu navigation: 고객센터 > 1:1 문의 | +| 2 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 3 | 필수 검증: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 46 buttons | +| 4 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 3 rows | +| 5 | 문의 목록 구조 확인 | - | ✅ | 0ms | Table: 6 cols, 3 rows | +| 6 | [SEARCH] 검색 기능 | SEARCH | ✅ | 215ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 7 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1502ms | Detail checks: 0/1 matched | +| 8 | 문의하기 버튼 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'I', "Inquiry bu"... is not valid JSON/raw:Inquiry bu | +| 9 | 문의 행 클릭 | - | ✅ | 314ms | Clicked (existed): table tbody tr:first-child | +| 10 | 문의 상세 확인 | - | ⚠️ | 1521ms | Detail checks: 0/1 matched | +| 11 | 목록으로 돌아가기 | - | ✅ | 307ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 12 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 77ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/qna | diff --git a/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_15-44-02.md b/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_15-44-02.md new file mode 100644 index 0000000..40586a3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_15-44-02.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 공지사항 테스트 + +**테스트 ID**: customer-notice | **실행**: 2026-03-03_15-44-02 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 공지사항 | - | ✅ | 2516ms | Menu navigation: 고객센터 > 공지사항 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/customer-center/notices | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 4 cards found" is not valid JSON/raw:Sta | +| 5 | 공지사항 목록 구조 확인 | - | ✅ | 0ms | Table: 6 cols, 1 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 1" is not valid JSON/raw:Filters | +| 7 | [READ] 공지사항 목록 데이터 확인 | READ | ⚠️ | 1013ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 공지사항 검색 | SEARCH | ✅ | 214ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 301ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | [READ] 공지사항 상세 보기 | READ | ✅ | 310ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 12 | 상세 페이지 구조 확인 | - | ✅ | 0ms | Checks: 1/4 verified | +| 13 | 첨부파일 확인 | - | ⚠️ | 1003ms | Checks: 0/1 verified | +| 14 | 이전/다음 글 네비게이션 | - | ⚠️ | 1017ms | Checks: 0/2 verified | +| 15 | 목록으로 돌아가기 | - | ✅ | 305ms | 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 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/notices | diff --git a/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_21-41-04.md b/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_21-41-04.md new file mode 100644 index 0000000..4fd19fb --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_21-41-04.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 공지사항 테스트 + +**테스트 ID**: customer-notice | **실행**: 2026-03-03_21-41-04 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 공지사항 | - | ✅ | 2519ms | Menu navigation: 고객센터 > 공지사항 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/customer-center/notices | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 39 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 4 cards found" is not valid JSON/raw:Sta | +| 5 | 공지사항 목록 구조 확인 | - | ✅ | 0ms | Table: 6 cols, 1 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 1" is not valid JSON/raw:Filters | +| 7 | [READ] 공지사항 목록 데이터 확인 | READ | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 공지사항 검색 | SEARCH | ✅ | 219ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1017ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 308ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | [READ] 공지사항 상세 보기 | READ | ✅ | 308ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 12 | 상세 페이지 구조 확인 | - | ✅ | 0ms | Checks: 1/4 verified | +| 13 | 첨부파일 확인 | - | ⚠️ | 1009ms | Checks: 0/1 verified | +| 14 | 이전/다음 글 네비게이션 | - | ⚠️ | 1009ms | Checks: 0/2 verified | +| 15 | 목록으로 돌아가기 | - | ✅ | 314ms | 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 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/notices | diff --git a/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_22-41-16.md b/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_22-41-16.md new file mode 100644 index 0000000..6fcd02e --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-notice_2026-03-03_22-41-16.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 공지사항 테스트 + +**테스트 ID**: customer-notice | **실행**: 2026-03-03_22-41-16 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 공지사항 | - | ✅ | 2521ms | 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 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 4 cards found" is not valid JSON/raw:Sta | +| 5 | 공지사항 목록 구조 확인 | - | ✅ | 0ms | Table: 6 cols, 1 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 1" is not valid JSON/raw:Filters | +| 7 | [READ] 공지사항 목록 데이터 확인 | READ | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 공지사항 검색 | SEARCH | ✅ | 216ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 302ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | [READ] 공지사항 상세 보기 | READ | ✅ | 310ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 12 | 상세 페이지 구조 확인 | - | ✅ | 0ms | Checks: 1/4 verified | +| 13 | 첨부파일 확인 | - | ⚠️ | 1017ms | Checks: 0/1 verified | +| 14 | 이전/다음 글 네비게이션 | - | ⚠️ | 1016ms | Checks: 0/2 verified | +| 15 | 목록으로 돌아가기 | - | ✅ | 313ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 16 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 17 | 정렬 기능 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 18 | 중요 공지 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 52ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/notices | diff --git a/e2e/results/hotfix/success/OK-customer-notice_2026-03-04_10-26-14.md b/e2e/results/hotfix/success/OK-customer-notice_2026-03-04_10-26-14.md new file mode 100644 index 0000000..64bdeb2 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-notice_2026-03-04_10-26-14.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 공지사항 테스트 + +**테스트 ID**: customer-notice | **실행**: 2026-03-04_10-26-14 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 공지사항 | - | ✅ | 2532ms | 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 | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 공지사항 검색 | SEARCH | ✅ | 204ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1012ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 313ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | [READ] 공지사항 상세 보기 | READ | ✅ | 306ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 12 | 상세 페이지 구조 확인 | - | ✅ | 1ms | Checks: 1/4 verified | +| 13 | 첨부파일 확인 | - | ⚠️ | 1031ms | Checks: 0/1 verified | +| 14 | 이전/다음 글 네비게이션 | - | ⚠️ | 1016ms | Checks: 0/2 verified | +| 15 | 목록으로 돌아가기 | - | ✅ | 304ms | 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) | +|---------|------|------|----------|--------------| +| 3 | 3 | 0 | 144ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/notices | diff --git a/e2e/results/hotfix/success/OK-customer-notice_2026-03-04_22-59-49.md b/e2e/results/hotfix/success/OK-customer-notice_2026-03-04_22-59-49.md new file mode 100644 index 0000000..d3ac200 --- /dev/null +++ b/e2e/results/hotfix/success/OK-customer-notice_2026-03-04_22-59-49.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 공지사항 테스트 + +**테스트 ID**: customer-notice | **실행**: 2026-03-04_22-59-49 | **결과**: PASS +**소요 시간**: 15.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 19 | 15 | 0 | 4 | 79% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 고객센터 > 공지사항 | - | ✅ | 2521ms | 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 | ⚠️ | 1507ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 공지사항 검색 | SEARCH | ✅ | 208ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1518ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 314ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | [READ] 공지사항 상세 보기 | READ | ✅ | 304ms | Clicked (existed): table tbody tr:first-child, [class*='list'] [class*='item']:f | +| 12 | 상세 페이지 구조 확인 | - | ✅ | 1ms | Checks: 1/4 verified | +| 13 | 첨부파일 확인 | - | ⚠️ | 1515ms | Checks: 0/1 verified | +| 14 | 이전/다음 글 네비게이션 | - | ⚠️ | 1515ms | Checks: 0/2 verified | +| 15 | 목록으로 돌아가기 | - | ✅ | 304ms | Clicked (existed): button:has-text('목록'), a:has-text('목록'), [class*='back'] | +| 16 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 17 | 정렬 기능 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 18 | 중요 공지 표시 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 19 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 83ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/customer-center/notices | diff --git a/e2e/results/hotfix/success/OK-department-add_2026-03-03_15-44-15.md b/e2e/results/hotfix/success/OK-department-add_2026-03-03_15-44-15.md new file mode 100644 index 0000000..2490da8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-department-add_2026-03-03_15-44-15.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 부서관리 테스트 + +**테스트 ID**: department-add | **실행**: 2026-03-03_15-44-15 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 부서관리 | - | ✅ | 2512ms | Menu navigation: 인사관리 > 부서관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/department-management | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 2 cards found" is not valid JSON/raw:Sta | +| 5 | 부서 트리/목록 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 부서 목록 데이터 확인 | READ | ⚠️ | 1002ms | Detail checks: 0/1 matched | +| 7 | [READ] 첫 번째 부서 노드 클릭 | READ | ✅ | 2ms | Element not present (ok): table tbody tr:first-child, [class*='tree'] > *:first- | +| 8 | [READ] 부서 상세 정보 확인 | READ | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 9 | 부서 추가 버튼 확인 | - | ✅ | 313ms | Clicked (existed): button:has-text('추가'), button:has-text('등록'), button:has-text | +| 10 | 추가 폼/모달 확인 | - | ✅ | 1ms | Checks: 2/2 verified | +| 11 | 추가 모달 닫기 | - | ✅ | 1ms | No modal open | +| 12 | 부서 트리 구조 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 13 | 삭제 버튼 존재 확인 | - | ⚠️ | 1013ms | Checks: 0/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | +| 16 | 부서관리 페이지 최종 확인 | - | ⚠️ | 1019ms | Detail checks: 0/1 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | diff --git a/e2e/results/hotfix/success/OK-department-add_2026-03-03_21-41-17.md b/e2e/results/hotfix/success/OK-department-add_2026-03-03_21-41-17.md new file mode 100644 index 0000000..13048c5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-department-add_2026-03-03_21-41-17.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 부서관리 테스트 + +**테스트 ID**: department-add | **실행**: 2026-03-03_21-41-17 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 부서관리 | - | ✅ | 2518ms | Menu navigation: 인사관리 > 부서관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/department-management | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 2 cards found" is not valid JSON/raw:Sta | +| 5 | 부서 트리/목록 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 부서 목록 데이터 확인 | READ | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 7 | [READ] 첫 번째 부서 노드 클릭 | READ | ✅ | 3ms | Element not present (ok): table tbody tr:first-child, [class*='tree'] > *:first- | +| 8 | [READ] 부서 상세 정보 확인 | READ | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 9 | 부서 추가 버튼 확인 | - | ✅ | 313ms | Clicked (existed): button:has-text('추가'), button:has-text('등록'), button:has-text | +| 10 | 추가 폼/모달 확인 | - | ✅ | 1ms | Checks: 2/2 verified | +| 11 | 추가 모달 닫기 | - | ✅ | 0ms | No modal open | +| 12 | 부서 트리 구조 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 13 | 삭제 버튼 존재 확인 | - | ⚠️ | 1000ms | Checks: 0/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 16 | 부서관리 페이지 최종 확인 | - | ⚠️ | 1002ms | Detail checks: 0/1 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | diff --git a/e2e/results/hotfix/success/OK-department-add_2026-03-03_22-41-29.md b/e2e/results/hotfix/success/OK-department-add_2026-03-03_22-41-29.md new file mode 100644 index 0000000..bd9c181 --- /dev/null +++ b/e2e/results/hotfix/success/OK-department-add_2026-03-03_22-41-29.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 부서관리 테스트 + +**테스트 ID**: department-add | **실행**: 2026-03-03_22-41-29 | **결과**: PASS +**소요 시간**: 12.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 부서관리 | - | ✅ | 2523ms | Menu navigation: 인사관리 > 부서관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/department-management | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'S', "Stats: 2 cards found" is not valid JSON/raw:Sta | +| 5 | 부서 트리/목록 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 부서 목록 데이터 확인 | READ | ⚠️ | 1003ms | Detail checks: 0/1 matched | +| 7 | [READ] 첫 번째 부서 노드 클릭 | READ | ✅ | 2ms | Element not present (ok): table tbody tr:first-child, [class*='tree'] > *:first- | +| 8 | [READ] 부서 상세 정보 확인 | READ | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 9 | 부서 추가 버튼 확인 | - | ✅ | 315ms | Clicked (existed): button:has-text('추가'), button:has-text('등록'), button:has-text | +| 10 | 추가 폼/모달 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 11 | 추가 모달 닫기 | - | ✅ | 1ms | No modal open | +| 12 | 부서 트리 구조 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 13 | 삭제 버튼 존재 확인 | - | ⚠️ | 1001ms | Checks: 0/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 16 | 부서관리 페이지 최종 확인 | - | ⚠️ | 1011ms | Detail checks: 0/1 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | diff --git a/e2e/results/hotfix/success/OK-department-add_2026-03-04_10-26-27.md b/e2e/results/hotfix/success/OK-department-add_2026-03-04_10-26-27.md new file mode 100644 index 0000000..e98dcc9 --- /dev/null +++ b/e2e/results/hotfix/success/OK-department-add_2026-03-04_10-26-27.md @@ -0,0 +1,43 @@ +# ✅ E2E 테스트 성공: 부서관리 테스트 + +**테스트 ID**: department-add | **실행**: 2026-03-04_10-26-27 | **결과**: PASS +**소요 시간**: 13.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 부서관리 | - | ✅ | 2512ms | Menu navigation: 인사관리 > 부서관리 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/hr/department-management | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 45 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 2 cards found" is not valid JSON/raw:Sta | +| 5 | 부서 트리/목록 구조 확인 | - | ✅ | 0ms | Checks: 3/3 verified | +| 6 | [READ] 부서 목록 데이터 확인 | READ | ⚠️ | 1033ms | Detail checks: 0/1 matched | +| 7 | [READ] 첫 번째 부서 노드 클릭 | READ | ✅ | 1ms | Element not present (ok): table tbody tr:first-child, [class*='tree'] > *:first- | +| 8 | [READ] 부서 상세 정보 확인 | READ | ⚠️ | 1016ms | Detail checks: 0/1 matched | +| 9 | 부서 추가 버튼 확인 | - | ✅ | 310ms | Clicked (existed): button:has-text('추가'), button:has-text('등록'), button:has-text | +| 10 | 추가 폼/모달 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 11 | 추가 모달 닫기 | - | ✅ | 0ms | No modal open | +| 12 | 부서 트리 구조 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 13 | 삭제 버튼 존재 확인 | - | ⚠️ | 1006ms | Checks: 0/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 16 | 부서관리 페이지 최종 확인 | - | ⚠️ | 1016ms | Detail checks: 0/1 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | + +### 콘솔 에러 (Health Check) +1. `[UniversalListPage] Fetch error: TypeError: network error` diff --git a/e2e/results/hotfix/success/OK-department-add_2026-03-04_23-00-04.md b/e2e/results/hotfix/success/OK-department-add_2026-03-04_23-00-04.md new file mode 100644 index 0000000..b8b464f --- /dev/null +++ b/e2e/results/hotfix/success/OK-department-add_2026-03-04_23-00-04.md @@ -0,0 +1,40 @@ +# ✅ E2E 테스트 성공: 부서관리 테스트 + +**테스트 ID**: department-add | **실행**: 2026-03-04_23-00-04 | **결과**: PASS +**소요 시간**: 15.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 16 | 12 | 0 | 4 | 75% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 인사관리 > 부서관리 | - | ✅ | 2507ms | 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 | 통계 카드 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'S', "Stats: 2 cards found" is not valid JSON/raw:Sta | +| 5 | 부서 트리/목록 구조 확인 | - | ✅ | 1ms | Checks: 3/3 verified | +| 6 | [READ] 부서 목록 데이터 확인 | READ | ⚠️ | 1512ms | Detail checks: 0/1 matched | +| 7 | [READ] 첫 번째 부서 노드 클릭 | READ | ✅ | 1ms | Element not present (ok): table tbody tr:first-child, [class*='tree'] > *:first- | +| 8 | [READ] 부서 상세 정보 확인 | READ | ⚠️ | 1514ms | Detail checks: 0/1 matched | +| 9 | 부서 추가 버튼 확인 | - | ✅ | 317ms | Clicked (existed): button:has-text('추가'), button:has-text('등록'), button:has-text | +| 10 | 추가 폼/모달 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 11 | 추가 모달 닫기 | - | ✅ | 1ms | No modal open | +| 12 | 부서 트리 구조 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 13 | 삭제 버튼 존재 확인 | - | ⚠️ | 1502ms | Checks: 0/1 verified | +| 14 | 페이지네이션 확인 | - | ✅ | 3ms | json_fail:Unexpected token 'N', "No paginat"... is not valid JSON/raw:No paginat | +| 15 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | +| 16 | 부서관리 페이지 최종 확인 | - | ⚠️ | 1512ms | Detail checks: 0/1 matched | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/department-management | diff --git a/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_15-44-31.md b/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_15-44-31.md new file mode 100644 index 0000000..5229158 --- /dev/null +++ b/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_15-44-31.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: deposit-management | **실행**: 2026-03-03_15-44-31 | **결과**: PASS +**소요 시간**: 15.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 21 | 20 | 0 | 1 | 95% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2321ms | json_fail:Unexpected token 's', "sidebar expanded" is not valid JSON/raw:sidebar | +| 2 | 2단계 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2526ms | Menu navigation: 회계관리 > 입금관리 | +| 3 | 목록 페이지 구조 확인 | - | ✅ | 1ms | Element exists: body | +| 4 | 계정과목명 드롭다운 옵션 확인 | - | ✅ | 3ms | Element not present (ok): 계정과목명 드롭다운 | +| 5 | 체크박스 선택 후 계정과목명 일괄변경 | - | ✅ | 1011ms | json_fail:Unexpected token 'b', "batch upda"... is not valid JSON/raw:batch upda | +| 6 | 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 1ms | Element exists: body | +| 7 | 입금 상세 페이지 이동 | - | ✅ | 510ms | Clicked first row | +| 8 | 상세 페이지 읽기 모드 필드 확인 | - | ✅ | 1ms | Element exists: body | +| 9 | 수정 모드 전환 | - | ✅ | 322ms | Clicked (existed): 수정 | +| 10 | 수정 모드 필드 활성화 검증 | - | ✅ | 1ms | Element exists: body | +| 11 | 거래처 드롭다운 옵션 확인 | - | ✅ | 1ms | Element not present (ok): 거래처 드롭다운 | +| 12 | 입금 유형 드롭다운 옵션 확인 | - | ✅ | 2ms | Element not present (ok): 입금 유형 드롭다운 | +| 13 | 수정 데이터 입력 | - | ✅ | 1018ms | json_fail:Unexpected token 'o', "form filled" is not valid JSON/raw:form filled | +| 14 | 저장 및 결과 확인 | - | ✅ | 308ms | Clicked (existed): 저장 | +| 15 | 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1018ms | Detail checks: 0/3 matched | +| 16 | 취소 버튼 동작 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'c', "cancel tested" is not valid JSON/raw:cancel tes | +| 17 | 목록 버튼 동작 확인 | - | ✅ | 2ms | Element not present (ok): 목록 | +| 18 | 필터 드롭다운 검증 | - | ✅ | 1ms | Element exists: body | +| 19 | 날짜 필터 검증 | - | ✅ | 315ms | Clicked (existed): 당해년도 | +| 20 | 페이지네이션 동작 확인 | - | ✅ | 317ms | Clicked (existed): 다음 | +| 21 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 55ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_21-41-33.md b/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_21-41-33.md new file mode 100644 index 0000000..dd6a842 --- /dev/null +++ b/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_21-41-33.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: deposit-management | **실행**: 2026-03-03_21-41-33 | **결과**: PASS +**소요 시간**: 15.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 21 | 20 | 0 | 1 | 95% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2315ms | json_fail:Unexpected token 's', "sidebar expanded" is not valid JSON/raw:sidebar | +| 2 | 2단계 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2510ms | Menu navigation: 회계관리 > 입금관리 | +| 3 | 목록 페이지 구조 확인 | - | ✅ | 1ms | Element exists: body | +| 4 | 계정과목명 드롭다운 옵션 확인 | - | ✅ | 4ms | Element not present (ok): 계정과목명 드롭다운 | +| 5 | 체크박스 선택 후 계정과목명 일괄변경 | - | ✅ | 1009ms | json_fail:Unexpected token 'b', "batch upda"... is not valid JSON/raw:batch upda | +| 6 | 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 7 | 입금 상세 페이지 이동 | - | ✅ | 513ms | Clicked first row | +| 8 | 상세 페이지 읽기 모드 필드 확인 | - | ✅ | 1ms | Element exists: body | +| 9 | 수정 모드 전환 | - | ✅ | 319ms | Clicked (existed): 수정 | +| 10 | 수정 모드 필드 활성화 검증 | - | ✅ | 0ms | Element exists: body | +| 11 | 거래처 드롭다운 옵션 확인 | - | ✅ | 2ms | Element not present (ok): 거래처 드롭다운 | +| 12 | 입금 유형 드롭다운 옵션 확인 | - | ✅ | 0ms | Element not present (ok): 입금 유형 드롭다운 | +| 13 | 수정 데이터 입력 | - | ✅ | 1034ms | json_fail:Unexpected token 'o', "form filled" is not valid JSON/raw:form filled | +| 14 | 저장 및 결과 확인 | - | ✅ | 317ms | Clicked (existed): 저장 | +| 15 | 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1019ms | Detail checks: 0/3 matched | +| 16 | 취소 버튼 동작 확인 | - | ✅ | 2ms | json_fail:Unexpected token 'c', "cancel tested" is not valid JSON/raw:cancel tes | +| 17 | 목록 버튼 동작 확인 | - | ✅ | 4ms | Element not present (ok): 목록 | +| 18 | 필터 드롭다운 검증 | - | ✅ | 1ms | Element exists: body | +| 19 | 날짜 필터 검증 | - | ✅ | 308ms | Clicked (existed): 당해년도 | +| 20 | 페이지네이션 동작 확인 | - | ✅ | 314ms | Clicked (existed): 다음 | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 74ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_22-41-45.md b/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_22-41-45.md new file mode 100644 index 0000000..92657a5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-deposit-management_2026-03-03_22-41-45.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: deposit-management | **실행**: 2026-03-03_22-41-45 | **결과**: PASS +**소요 시간**: 15.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 21 | 20 | 0 | 1 | 95% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2327ms | json_fail:Unexpected token 's', "sidebar expanded" is not valid JSON/raw:sidebar | +| 2 | 2단계 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2513ms | Menu navigation: 회계관리 > 입금관리 | +| 3 | 목록 페이지 구조 확인 | - | ✅ | 2ms | Element exists: body | +| 4 | 계정과목명 드롭다운 옵션 확인 | - | ✅ | 7ms | Element not present (ok): 계정과목명 드롭다운 | +| 5 | 체크박스 선택 후 계정과목명 일괄변경 | - | ✅ | 1011ms | json_fail:Unexpected token 'b', "batch upda"... is not valid JSON/raw:batch upda | +| 6 | 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 1ms | Element exists: body | +| 7 | 입금 상세 페이지 이동 | - | ✅ | 517ms | Clicked first row | +| 8 | 상세 페이지 읽기 모드 필드 확인 | - | ✅ | 1ms | Element exists: body | +| 9 | 수정 모드 전환 | - | ✅ | 318ms | Clicked (existed): 수정 | +| 10 | 수정 모드 필드 활성화 검증 | - | ✅ | 1ms | Element exists: body | +| 11 | 거래처 드롭다운 옵션 확인 | - | ✅ | 2ms | Element not present (ok): 거래처 드롭다운 | +| 12 | 입금 유형 드롭다운 옵션 확인 | - | ✅ | 1ms | Element not present (ok): 입금 유형 드롭다운 | +| 13 | 수정 데이터 입력 | - | ✅ | 1034ms | json_fail:Unexpected token 'o', "form filled" is not valid JSON/raw:form filled | +| 14 | 저장 및 결과 확인 | - | ✅ | 309ms | Clicked (existed): 저장 | +| 15 | 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1005ms | Detail checks: 0/3 matched | +| 16 | 취소 버튼 동작 확인 | - | ✅ | 1ms | json_fail:Unexpected token 'c', "cancel tested" is not valid JSON/raw:cancel tes | +| 17 | 목록 버튼 동작 확인 | - | ✅ | 4ms | Element not present (ok): 목록 | +| 18 | 필터 드롭다운 검증 | - | ✅ | 1ms | Element exists: body | +| 19 | 날짜 필터 검증 | - | ✅ | 310ms | Clicked (existed): 당해년도 | +| 20 | 페이지네이션 동작 확인 | - | ✅ | 305ms | Clicked (existed): 다음 | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 80ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-deposit-management_2026-03-04_10-26-42.md b/e2e/results/hotfix/success/OK-deposit-management_2026-03-04_10-26-42.md new file mode 100644 index 0000000..0127f7d --- /dev/null +++ b/e2e/results/hotfix/success/OK-deposit-management_2026-03-04_10-26-42.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: deposit-management | **실행**: 2026-03-04_10-26-42 | **결과**: PASS +**소요 시간**: 15.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 21 | 20 | 0 | 1 | 95% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2316ms | json_fail:Unexpected token 's', "sidebar expanded" is not valid JSON/raw:sidebar | +| 2 | 2단계 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2520ms | Menu navigation: 회계관리 > 입금관리 | +| 3 | 목록 페이지 구조 확인 | - | ✅ | 0ms | Element exists: body | +| 4 | 계정과목명 드롭다운 옵션 확인 | - | ✅ | 2ms | Element not present (ok): 계정과목명 드롭다운 | +| 5 | 체크박스 선택 후 계정과목명 일괄변경 | - | ✅ | 1014ms | json_fail:Unexpected token 'b', "batch upda"... is not valid JSON/raw:batch upda | +| 6 | 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 1ms | Element exists: body | +| 7 | 입금 상세 페이지 이동 | - | ✅ | 514ms | Clicked first row | +| 8 | 상세 페이지 읽기 모드 필드 확인 | - | ✅ | 1ms | Element exists: body | +| 9 | 수정 모드 전환 | - | ✅ | 317ms | Clicked (existed): 수정 | +| 10 | 수정 모드 필드 활성화 검증 | - | ✅ | 0ms | Element exists: body | +| 11 | 거래처 드롭다운 옵션 확인 | - | ✅ | 1ms | Element not present (ok): 거래처 드롭다운 | +| 12 | 입금 유형 드롭다운 옵션 확인 | - | ✅ | 0ms | Element not present (ok): 입금 유형 드롭다운 | +| 13 | 수정 데이터 입력 | - | ✅ | 1016ms | json_fail:Unexpected token 'o', "form filled" is not valid JSON/raw:form filled | +| 14 | 저장 및 결과 확인 | - | ✅ | 313ms | Clicked (existed): 저장 | +| 15 | 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1019ms | 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 | 필터 드롭다운 검증 | - | ✅ | 0ms | Element exists: body | +| 19 | 날짜 필터 검증 | - | ✅ | 314ms | Clicked (existed): 당해년도 | +| 20 | 페이지네이션 동작 확인 | - | ✅ | 317ms | Clicked (existed): 다음 | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 75ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-deposit-management_2026-03-04_23-00-20.md b/e2e/results/hotfix/success/OK-deposit-management_2026-03-04_23-00-20.md new file mode 100644 index 0000000..badb5fe --- /dev/null +++ b/e2e/results/hotfix/success/OK-deposit-management_2026-03-04_23-00-20.md @@ -0,0 +1,45 @@ +# ✅ E2E 테스트 성공: 입금관리 테스트 + +**테스트 ID**: deposit-management | **실행**: 2026-03-04_23-00-20 | **결과**: PASS +**소요 시간**: 16.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 21 | 20 | 0 | 1 | 95% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 사이드바 메뉴 전체 펼치기 | - | ✅ | 2321ms | json_fail:Unexpected token 's', "sidebar expanded" is not valid JSON/raw:sidebar | +| 2 | 2단계 메뉴 진입: 회계관리 > 입금관리 | - | ✅ | 2513ms | Menu navigation: 회계관리 > 입금관리 | +| 3 | 목록 페이지 구조 확인 | - | ✅ | 1ms | Element exists: body | +| 4 | 계정과목명 드롭다운 옵션 확인 | - | ✅ | 1ms | Element not present (ok): 계정과목명 드롭다운 | +| 5 | 체크박스 선택 후 계정과목명 일괄변경 | - | ✅ | 1011ms | json_fail:Unexpected token 'b', "batch upda"... is not valid JSON/raw:batch upda | +| 6 | 필수 검증: 계정과목명 변경 데이터 반영 확인 | - | ✅ | 0ms | Element exists: body | +| 7 | 입금 상세 페이지 이동 | - | ✅ | 517ms | Clicked first row | +| 8 | 상세 페이지 읽기 모드 필드 확인 | - | ✅ | 1ms | Element exists: body | +| 9 | 수정 모드 전환 | - | ✅ | 316ms | Clicked (existed): 수정 | +| 10 | 수정 모드 필드 활성화 검증 | - | ✅ | 1ms | Element exists: body | +| 11 | 거래처 드롭다운 옵션 확인 | - | ✅ | 2ms | Element not present (ok): 거래처 드롭다운 | +| 12 | 입금 유형 드롭다운 옵션 확인 | - | ✅ | 1ms | Element not present (ok): 입금 유형 드롭다운 | +| 13 | 수정 데이터 입력 | - | ✅ | 1033ms | json_fail:Unexpected token 'o', "form filled" is not valid JSON/raw:form filled | +| 14 | 저장 및 결과 확인 | - | ✅ | 315ms | Clicked (existed): 저장 | +| 15 | 필수 검증: 수정 데이터 반영 확인 | - | ⚠️ | 1503ms | 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 | 필터 드롭다운 검증 | - | ✅ | 0ms | Element exists: body | +| 19 | 날짜 필터 검증 | - | ✅ | 309ms | Clicked (existed): 당해년도 | +| 20 | 페이지네이션 동작 확인 | - | ✅ | 304ms | Clicked (existed): 다음 | +| 21 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_15-45-04.md b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_15-45-04.md new file mode 100644 index 0000000..59d0c79 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_15-45-04.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 회계 + +**테스트 ID**: detail-roundtrip-acc | **실행**: 2026-03-03_15-45-04 | **결과**: PASS +**소요 시간**: 32.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | [회계관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 519ms | CLICK_ROW / urlChg:true | +| 5 | [회계관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1518ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [회계관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2013ms | GO_BACK | +| 7 | [회계관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 8 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 524ms | Menu navigation: 회계관리 > 어음관리 | +| 9 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 12 | [회계관리 > 어음관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 515ms | CLICK_ROW / urlChg:true | +| 13 | [회계관리 > 어음관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [회계관리 > 어음관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 15 | [회계관리 > 어음관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 16 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 회계관리 > 입금관리 | +| 17 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 18 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [회계관리 > 입금관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [회계관리 > 입금관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 513ms | CLICK_ROW / urlChg:true | +| 21 | [회계관리 > 입금관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [회계관리 > 입금관리] 목록으로 복귀 | GO_BACK | ✅ | 2003ms | GO_BACK | +| 23 | [회계관리 > 입금관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1514ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 14 | 14 | 0 | 71ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_21-42-06.md b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_21-42-06.md new file mode 100644 index 0000000..47df6fb --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_21-42-06.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 회계 + +**테스트 ID**: detail-roundtrip-acc | **실행**: 2026-03-03_21-42-06 | **결과**: PASS +**소요 시간**: 32.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | [회계관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 2ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 5 | [회계관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1518ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [회계관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2008ms | GO_BACK | +| 7 | [회계관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1504ms | LIST_INTACT / intact:true | +| 8 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 510ms | Menu navigation: 회계관리 > 어음관리 | +| 9 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 12 | [회계관리 > 어음관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 13 | [회계관리 > 어음관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1501ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [회계관리 > 어음관리] 목록으로 복귀 | GO_BACK | ✅ | 2013ms | GO_BACK | +| 15 | [회계관리 > 어음관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1506ms | LIST_INTACT / intact:true | +| 16 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 회계관리 > 입금관리 | +| 17 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 18 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 19 | [회계관리 > 입금관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 20 | [회계관리 > 입금관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 513ms | CLICK_ROW / urlChg:true | +| 21 | [회계관리 > 입금관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1506ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [회계관리 > 입금관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 23 | [회계관리 > 입금관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 14 | 14 | 0 | 75ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_22-42-17.md b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_22-42-17.md new file mode 100644 index 0000000..85f2f0f --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-03_22-42-17.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 회계 + +**테스트 ID**: detail-roundtrip-acc | **실행**: 2026-03-03_22-42-17 | **결과**: PASS +**소요 시간**: 32.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | [회계관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 515ms | CLICK_ROW / urlChg:true | +| 5 | [회계관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1505ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [회계관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2011ms | GO_BACK | +| 7 | [회계관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1503ms | LIST_INTACT / intact:true | +| 8 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 520ms | Menu navigation: 회계관리 > 어음관리 | +| 9 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 12 | [회계관리 > 어음관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 503ms | CLICK_ROW / urlChg:true | +| 13 | [회계관리 > 어음관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1501ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [회계관리 > 어음관리] 목록으로 복귀 | GO_BACK | ✅ | 2016ms | GO_BACK | +| 15 | [회계관리 > 어음관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1507ms | LIST_INTACT / intact:true | +| 16 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 510ms | Menu navigation: 회계관리 > 입금관리 | +| 17 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 18 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [회계관리 > 입금관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [회계관리 > 입금관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 513ms | CLICK_ROW / urlChg:true | +| 21 | [회계관리 > 입금관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [회계관리 > 입금관리] 목록으로 복귀 | GO_BACK | ✅ | 2004ms | GO_BACK | +| 23 | [회계관리 > 입금관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1511ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 14 | 14 | 0 | 69ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_10-27-15.md b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_10-27-15.md new file mode 100644 index 0000000..894a953 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_10-27-15.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 회계 + +**테스트 ID**: detail-roundtrip-acc | **실행**: 2026-03-04_10-27-15 | **결과**: PASS +**소요 시간**: 32.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | [회계관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 516ms | CLICK_ROW / urlChg:true | +| 5 | [회계관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1517ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [회계관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2015ms | GO_BACK | +| 7 | [회계관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | +| 8 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 회계관리 > 어음관리 | +| 9 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 12 | [회계관리 > 어음관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 516ms | CLICK_ROW / urlChg:true | +| 13 | [회계관리 > 어음관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [회계관리 > 어음관리] 목록으로 복귀 | GO_BACK | ✅ | 2011ms | GO_BACK | +| 15 | [회계관리 > 어음관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1504ms | LIST_INTACT / intact:true | +| 16 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 회계관리 > 입금관리 | +| 17 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 18 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [회계관리 > 입금관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [회계관리 > 입금관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 515ms | CLICK_ROW / urlChg:true | +| 21 | [회계관리 > 입금관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1502ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [회계관리 > 입금관리] 목록으로 복귀 | GO_BACK | ✅ | 2016ms | GO_BACK | +| 23 | [회계관리 > 입금관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1500ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 14 | 14 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_23-00-52.md b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_23-00-52.md new file mode 100644 index 0000000..c0ee920 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-acc_2026-03-04_23-00-52.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 회계 + +**테스트 ID**: detail-roundtrip-acc | **실행**: 2026-03-04_23-00-52 | **결과**: PASS +**소요 시간**: 32.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | [회계관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 504ms | CLICK_ROW / urlChg:true | +| 5 | [회계관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [회계관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2007ms | GO_BACK | +| 7 | [회계관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1505ms | LIST_INTACT / intact:true | +| 8 | [회계관리 > 어음관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 회계관리 > 어음관리 | +| 9 | [회계관리 > 어음관리] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 10 | [회계관리 > 어음관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [회계관리 > 어음관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 12 | [회계관리 > 어음관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 511ms | CLICK_ROW / urlChg:true | +| 13 | [회계관리 > 어음관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1507ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [회계관리 > 어음관리] 목록으로 복귀 | GO_BACK | ✅ | 2009ms | GO_BACK | +| 15 | [회계관리 > 어음관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1505ms | LIST_INTACT / intact:true | +| 16 | [회계관리 > 입금관리] 메뉴 이동 | - | ✅ | 515ms | Menu navigation: 회계관리 > 입금관리 | +| 17 | [회계관리 > 입금관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 18 | [회계관리 > 입금관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [회계관리 > 입금관리] 테이블 상태 캡처 | CAPTURE | ✅ | 2ms | CAPTURE / rows:20 | +| 20 | [회계관리 > 입금관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 504ms | CLICK_ROW / urlChg:true | +| 21 | [회계관리 > 입금관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [회계관리 > 입금관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 23 | [회계관리 > 입금관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 14 | 14 | 0 | 71ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/vendors | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_15-45-29.md b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_15-45-29.md new file mode 100644 index 0000000..583b26a --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_15-45-29.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 인사/게시판 + +**테스트 ID**: detail-roundtrip-hr-board | **실행**: 2026-03-03_15-45-29 | **결과**: PASS +**소요 시간**: 25.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [인사관리 > 사원관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | [인사관리 > 사원관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [인사관리 > 사원관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [인사관리 > 사원관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 509ms | CLICK_ROW / urlChg:true | +| 5 | [인사관리 > 사원관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [인사관리 > 사원관리] 목록으로 복귀 | GO_BACK | ✅ | 2002ms | GO_BACK | +| 7 | [인사관리 > 사원관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1504ms | LIST_INTACT / intact:true | +| 8 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 2530ms | Menu navigation: 게시판 > 자유게시판 | +| 9 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 11 | [게시판 > 자유게시판] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:10 | +| 12 | [게시판 > 자유게시판] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 509ms | CLICK_ROW / urlChg:true | +| 13 | [게시판 > 자유게시판] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [게시판 > 자유게시판] 목록으로 복귀 | GO_BACK | ✅ | 2017ms | GO_BACK | +| 15 | [게시판 > 자유게시판] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 17 | 17 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_21-42-32.md b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_21-42-32.md new file mode 100644 index 0000000..e876bb4 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_21-42-32.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 인사/게시판 + +**테스트 ID**: detail-roundtrip-hr-board | **실행**: 2026-03-03_21-42-32 | **결과**: PASS +**소요 시간**: 25.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [인사관리 > 사원관리] 페이지 로드 대기 | - | ✅ | 3011ms | 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 | ✅ | 2010ms | GO_BACK | +| 7 | [인사관리 > 사원관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1507ms | LIST_INTACT / intact:true | +| 8 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 2531ms | Menu navigation: 게시판 > 자유게시판 | +| 9 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 11 | [게시판 > 자유게시판] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:10 | +| 12 | [게시판 > 자유게시판] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 517ms | CLICK_ROW / urlChg:true | +| 13 | [게시판 > 자유게시판] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1518ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [게시판 > 자유게시판] 목록으로 복귀 | GO_BACK | ✅ | 2005ms | GO_BACK | +| 15 | [게시판 > 자유게시판] 목록 무결성 확인 | LIST_INTACT | ✅ | 1512ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 17 | 17 | 0 | 57ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_22-42-43.md b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_22-42-43.md new file mode 100644 index 0000000..f00a159 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-03_22-42-43.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 인사/게시판 + +**테스트 ID**: detail-roundtrip-hr-board | **실행**: 2026-03-03_22-42-43 | **결과**: PASS +**소요 시간**: 25.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [인사관리 > 사원관리] 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | [인사관리 > 사원관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [인사관리 > 사원관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [인사관리 > 사원관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 515ms | CLICK_ROW / urlChg:true | +| 5 | [인사관리 > 사원관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [인사관리 > 사원관리] 목록으로 복귀 | GO_BACK | ✅ | 2011ms | GO_BACK | +| 7 | [인사관리 > 사원관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1504ms | LIST_INTACT / intact:true | +| 8 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 게시판 > 자유게시판 | +| 9 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 11 | [게시판 > 자유게시판] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:10 | +| 12 | [게시판 > 자유게시판] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 13 | [게시판 > 자유게시판] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1508ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [게시판 > 자유게시판] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 15 | [게시판 > 자유게시판] 목록 무결성 확인 | LIST_INTACT | ✅ | 1504ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 17 | 17 | 0 | 53ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_10-27-41.md b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_10-27-41.md new file mode 100644 index 0000000..73d158d --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_10-27-41.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 인사/게시판 + +**테스트 ID**: detail-roundtrip-hr-board | **실행**: 2026-03-04_10-27-41 | **결과**: PASS +**소요 시간**: 25.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [인사관리 > 사원관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | [인사관리 > 사원관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [인사관리 > 사원관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [인사관리 > 사원관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 5 | [인사관리 > 사원관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1508ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [인사관리 > 사원관리] 목록으로 복귀 | GO_BACK | ✅ | 2015ms | GO_BACK | +| 7 | [인사관리 > 사원관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1503ms | LIST_INTACT / intact:true | +| 8 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 게시판 > 자유게시판 | +| 9 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 11 | [게시판 > 자유게시판] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:10 | +| 12 | [게시판 > 자유게시판] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 514ms | CLICK_ROW / urlChg:true | +| 13 | [게시판 > 자유게시판] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1505ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [게시판 > 자유게시판] 목록으로 복귀 | GO_BACK | ✅ | 2010ms | GO_BACK | +| 15 | [게시판 > 자유게시판] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 17 | 17 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_23-01-18.md b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_23-01-18.md new file mode 100644 index 0000000..b8a4b37 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-hr-board_2026-03-04_23-01-18.md @@ -0,0 +1,39 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 인사/게시판 + +**테스트 ID**: detail-roundtrip-hr-board | **실행**: 2026-03-04_23-01-18 | **결과**: PASS +**소요 시간**: 25.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 15 | 15 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [인사관리 > 사원관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [인사관리 > 사원관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [인사관리 > 사원관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [인사관리 > 사원관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 508ms | CLICK_ROW / urlChg:true | +| 5 | [인사관리 > 사원관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1509ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [인사관리 > 사원관리] 목록으로 복귀 | GO_BACK | ✅ | 2004ms | GO_BACK | +| 7 | [인사관리 > 사원관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1505ms | LIST_INTACT / intact:true | +| 8 | [게시판 > 자유게시판] 메뉴 이동 | - | ✅ | 2532ms | Menu navigation: 게시판 > 자유게시판 | +| 9 | [게시판 > 자유게시판] 페이지 로드 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 10 | [게시판 > 자유게시판] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 11 | [게시판 > 자유게시판] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:10 | +| 12 | [게시판 > 자유게시판] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 508ms | CLICK_ROW / urlChg:true | +| 13 | [게시판 > 자유게시판] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1507ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [게시판 > 자유게시판] 목록으로 복귀 | GO_BACK | ✅ | 2007ms | GO_BACK | +| 15 | [게시판 > 자유게시판] 목록 무결성 확인 | LIST_INTACT | ✅ | 1509ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 17 | 17 | 0 | 63ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_15-46-02.md b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_15-46-02.md new file mode 100644 index 0000000..2e21f99 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_15-46-02.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 판매 + +**테스트 ID**: detail-roundtrip-sales | **실행**: 2026-03-03_15-46-02 | **결과**: PASS +**소요 시간**: 32.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 2 | [판매관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [판매관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 4 | [판매관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 514ms | CLICK_ROW / urlChg:true | +| 5 | [판매관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [판매관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2011ms | GO_BACK | +| 7 | [판매관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1505ms | LIST_INTACT / intact:true | +| 8 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 524ms | Menu navigation: 판매관리 > 수주관리 | +| 9 | [판매관리 > 수주관리] 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 10 | [판매관리 > 수주관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매관리 > 수주관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 12 | [판매관리 > 수주관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 503ms | CLICK_ROW / urlChg:true | +| 13 | [판매관리 > 수주관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1502ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [판매관리 > 수주관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 15 | [판매관리 > 수주관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1503ms | LIST_INTACT / intact:true | +| 16 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 522ms | Menu navigation: 판매관리 > 견적관리 | +| 17 | [판매관리 > 견적관리] 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 18 | [판매관리 > 견적관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [판매관리 > 견적관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 20 | [판매관리 > 견적관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 502ms | CLICK_ROW / urlChg:true | +| 21 | [판매관리 > 견적관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1502ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [판매관리 > 견적관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 23 | [판매관리 > 견적관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_21-43-04.md b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_21-43-04.md new file mode 100644 index 0000000..101e74f --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_21-43-04.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 판매 + +**테스트 ID**: detail-roundtrip-sales | **실행**: 2026-03-03_21-43-04 | **결과**: PASS +**소요 시간**: 32.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | [판매관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [판매관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 515ms | CLICK_ROW / urlChg:true | +| 5 | [판매관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1502ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [판매관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 7 | [판매관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 8 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 524ms | Menu navigation: 판매관리 > 수주관리 | +| 9 | [판매관리 > 수주관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 10 | [판매관리 > 수주관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 11 | [판매관리 > 수주관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 12 | [판매관리 > 수주관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 515ms | CLICK_ROW / urlChg:true | +| 13 | [판매관리 > 수주관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1506ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [판매관리 > 수주관리] 목록으로 복귀 | GO_BACK | ✅ | 2008ms | GO_BACK | +| 15 | [판매관리 > 수주관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1505ms | LIST_INTACT / intact:true | +| 16 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 521ms | Menu navigation: 판매관리 > 견적관리 | +| 17 | [판매관리 > 견적관리] 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 18 | [판매관리 > 견적관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [판매관리 > 견적관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [판매관리 > 견적관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 504ms | CLICK_ROW / urlChg:true | +| 21 | [판매관리 > 견적관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1514ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [판매관리 > 견적관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 23 | [판매관리 > 견적관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1503ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 65ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_22-43-16.md b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_22-43-16.md new file mode 100644 index 0000000..5101dd5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-03_22-43-16.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 판매 + +**테스트 ID**: detail-roundtrip-sales | **실행**: 2026-03-03_22-43-16 | **결과**: PASS +**소요 시간**: 32.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | [판매관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [판매관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [판매관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 507ms | CLICK_ROW / urlChg:true | +| 5 | [판매관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1517ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [판매관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 7 | [판매관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 8 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 521ms | Menu navigation: 판매관리 > 수주관리 | +| 9 | [판매관리 > 수주관리] 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 10 | [판매관리 > 수주관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 11 | [판매관리 > 수주관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 12 | [판매관리 > 수주관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 514ms | CLICK_ROW / urlChg:true | +| 13 | [판매관리 > 수주관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1501ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [판매관리 > 수주관리] 목록으로 복귀 | GO_BACK | ✅ | 2002ms | GO_BACK | +| 15 | [판매관리 > 수주관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | +| 16 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 521ms | Menu navigation: 판매관리 > 견적관리 | +| 17 | [판매관리 > 견적관리] 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 18 | [판매관리 > 견적관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [판매관리 > 견적관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [판매관리 > 견적관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 516ms | CLICK_ROW / urlChg:true | +| 21 | [판매관리 > 견적관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1515ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [판매관리 > 견적관리] 목록으로 복귀 | GO_BACK | ✅ | 2003ms | GO_BACK | +| 23 | [판매관리 > 견적관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1514ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 69ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_10-28-13.md b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_10-28-13.md new file mode 100644 index 0000000..580f6b3 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_10-28-13.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 판매 + +**테스트 ID**: detail-roundtrip-sales | **실행**: 2026-03-04_10-28-13 | **결과**: PASS +**소요 시간**: 32.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | [판매관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [판매관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 4 | [판매관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 514ms | CLICK_ROW / urlChg:true | +| 5 | [판매관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [판매관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2014ms | GO_BACK | +| 7 | [판매관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 8 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 524ms | Menu navigation: 판매관리 > 수주관리 | +| 9 | [판매관리 > 수주관리] 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 10 | [판매관리 > 수주관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매관리 > 수주관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 12 | [판매관리 > 수주관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 517ms | CLICK_ROW / urlChg:true | +| 13 | [판매관리 > 수주관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1503ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [판매관리 > 수주관리] 목록으로 복귀 | GO_BACK | ✅ | 2011ms | GO_BACK | +| 15 | [판매관리 > 수주관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | +| 16 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 판매관리 > 견적관리 | +| 17 | [판매관리 > 견적관리] 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 18 | [판매관리 > 견적관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [판매관리 > 견적관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 20 | [판매관리 > 견적관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 502ms | CLICK_ROW / urlChg:true | +| 21 | [판매관리 > 견적관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1504ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [판매관리 > 견적관리] 목록으로 복귀 | GO_BACK | ✅ | 2011ms | GO_BACK | +| 23 | [판매관리 > 견적관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1502ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 72ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_23-01-51.md b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_23-01-51.md new file mode 100644 index 0000000..7f2de4e --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-roundtrip-sales_2026-03-04_23-01-51.md @@ -0,0 +1,47 @@ +# ✅ E2E 테스트 성공: 상세 조회 왕복 검증: 판매 + +**테스트 ID**: detail-roundtrip-sales | **실행**: 2026-03-04_23-01-51 | **결과**: PASS +**소요 시간**: 32.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 23 | 23 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [판매관리 > 거래처관리] 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | [판매관리 > 거래처관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [판매관리 > 거래처관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 4 | [판매관리 > 거래처관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 509ms | CLICK_ROW / urlChg:true | +| 5 | [판매관리 > 거래처관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1508ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 6 | [판매관리 > 거래처관리] 목록으로 복귀 | GO_BACK | ✅ | 2006ms | GO_BACK | +| 7 | [판매관리 > 거래처관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1509ms | LIST_INTACT / intact:true | +| 8 | [판매관리 > 수주관리] 메뉴 이동 | - | ✅ | 518ms | Menu navigation: 판매관리 > 수주관리 | +| 9 | [판매관리 > 수주관리] 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 10 | [판매관리 > 수주관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 11 | [판매관리 > 수주관리] 테이블 상태 캡처 | CAPTURE | ✅ | 0ms | CAPTURE / rows:20 | +| 12 | [판매관리 > 수주관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 513ms | CLICK_ROW / urlChg:true | +| 13 | [판매관리 > 수주관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1509ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 14 | [판매관리 > 수주관리] 목록으로 복귀 | GO_BACK | ✅ | 2008ms | GO_BACK | +| 15 | [판매관리 > 수주관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1509ms | LIST_INTACT / intact:true | +| 16 | [판매관리 > 견적관리] 메뉴 이동 | - | ✅ | 511ms | Menu navigation: 판매관리 > 견적관리 | +| 17 | [판매관리 > 견적관리] 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 18 | [판매관리 > 견적관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 19 | [판매관리 > 견적관리] 테이블 상태 캡처 | CAPTURE | ✅ | 1ms | CAPTURE / rows:20 | +| 20 | [판매관리 > 견적관리] 첫 행 클릭 → 상세 이동 | CLICK_ROW | ✅ | 508ms | CLICK_ROW / urlChg:true | +| 21 | [판매관리 > 견적관리] 상세 페이지 데이터 검증 | VERIFY_DETAIL | ✅ | 1511ms | VERIFY_DETAIL / idInUrl:true / match:true | +| 22 | [판매관리 > 견적관리] 목록으로 복귀 | GO_BACK | ✅ | 2004ms | GO_BACK | +| 23 | [판매관리 > 견적관리] 목록 무결성 확인 | LIST_INTACT | ✅ | 1501ms | LIST_INTACT / intact:true | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 23 | 23 | 0 | 64ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_15-46-25.md b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_15-46-25.md new file mode 100644 index 0000000..cf517cd --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_15-46-25.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 목록↔상세 필드별 대조 검증: 매출관리 + +**테스트 ID**: detail-verify-acc-sales | **실행**: 2026-03-03_15-46-25 | **결과**: PASS +**소요 시간**: 23.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5010ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 모든 셀 값 캡처 | CAPTURE | ✅ | 505ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 진입 | READ | ✅ | 2512ms | READ | +| 5 | [회계관리 > 매출관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [VERIFY] 상세 페이지 필드 1:1 대조 | VERIFY | ✅ | 2ms | DETAIL_VERIFY | +| 7 | [회계관리 > 매출관리] [VERIFY] 세금계산서/거래명세서 Switch 상태 확인 | VERIFY | ✅ | 1ms | SWITCH_VERIFY | +| 8 | [회계관리 > 매출관리] [VERIFY] 수정 모드 진입 가능 확인 | VERIFY | ✅ | 2014ms | EDIT_ACCESS | +| 9 | [회계관리 > 매출관리] [CANCEL] 취소 클릭 | CANCEL | ✅ | 2014ms | CANCEL | +| 10 | [회계관리 > 매출관리] [CANCEL] 목록 복귀 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 목록 복귀 후 테이블 확인 | VERIFY | ✅ | 500ms | BACK_VERIFY / rows:2 | +| 12 | [회계관리 > 매출관리] [VERIFY] 취소 후 데이터 무변경 확인 | VERIFY | ✅ | 502ms | NO_CHANGE_VERIFY | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_21-43-28.md b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_21-43-28.md new file mode 100644 index 0000000..05cd2e2 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_21-43-28.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 목록↔상세 필드별 대조 검증: 매출관리 + +**테스트 ID**: detail-verify-acc-sales | **실행**: 2026-03-03_21-43-28 | **결과**: PASS +**소요 시간**: 23.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5005ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 모든 셀 값 캡처 | CAPTURE | ✅ | 516ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 진입 | READ | ✅ | 2513ms | READ | +| 5 | [회계관리 > 매출관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [VERIFY] 상세 페이지 필드 1:1 대조 | VERIFY | ✅ | 2ms | DETAIL_VERIFY | +| 7 | [회계관리 > 매출관리] [VERIFY] 세금계산서/거래명세서 Switch 상태 확인 | VERIFY | ✅ | 1ms | SWITCH_VERIFY | +| 8 | [회계관리 > 매출관리] [VERIFY] 수정 모드 진입 가능 확인 | VERIFY | ✅ | 2015ms | EDIT_ACCESS | +| 9 | [회계관리 > 매출관리] [CANCEL] 취소 클릭 | CANCEL | ✅ | 2018ms | CANCEL | +| 10 | [회계관리 > 매출관리] [CANCEL] 목록 복귀 대기 | - | ✅ | 2016ms | Waited 2000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 목록 복귀 후 테이블 확인 | VERIFY | ✅ | 516ms | BACK_VERIFY / rows:2 | +| 12 | [회계관리 > 매출관리] [VERIFY] 취소 후 데이터 무변경 확인 | VERIFY | ✅ | 501ms | NO_CHANGE_VERIFY | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 58ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_22-43-39.md b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_22-43-39.md new file mode 100644 index 0000000..7bb63ec --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-03_22-43-39.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 목록↔상세 필드별 대조 검증: 매출관리 + +**테스트 ID**: detail-verify-acc-sales | **실행**: 2026-03-03_22-43-39 | **결과**: PASS +**소요 시간**: 23.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5013ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 모든 셀 값 캡처 | CAPTURE | ✅ | 516ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 진입 | READ | ✅ | 2517ms | READ | +| 5 | [회계관리 > 매출관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [VERIFY] 상세 페이지 필드 1:1 대조 | VERIFY | ✅ | 3ms | DETAIL_VERIFY | +| 7 | [회계관리 > 매출관리] [VERIFY] 세금계산서/거래명세서 Switch 상태 확인 | VERIFY | ✅ | 2ms | SWITCH_VERIFY | +| 8 | [회계관리 > 매출관리] [VERIFY] 수정 모드 진입 가능 확인 | VERIFY | ✅ | 2012ms | EDIT_ACCESS | +| 9 | [회계관리 > 매출관리] [CANCEL] 취소 클릭 | CANCEL | ✅ | 2004ms | CANCEL | +| 10 | [회계관리 > 매출관리] [CANCEL] 목록 복귀 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 목록 복귀 후 테이블 확인 | VERIFY | ✅ | 517ms | BACK_VERIFY / rows:2 | +| 12 | [회계관리 > 매출관리] [VERIFY] 취소 후 데이터 무변경 확인 | VERIFY | ✅ | 502ms | NO_CHANGE_VERIFY | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_10-28-37.md b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_10-28-37.md new file mode 100644 index 0000000..5e26fa5 --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_10-28-37.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 목록↔상세 필드별 대조 검증: 매출관리 + +**테스트 ID**: detail-verify-acc-sales | **실행**: 2026-03-04_10-28-37 | **결과**: PASS +**소요 시간**: 23.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5001ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 모든 셀 값 캡처 | CAPTURE | ✅ | 508ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 진입 | READ | ✅ | 2507ms | READ | +| 5 | [회계관리 > 매출관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [VERIFY] 상세 페이지 필드 1:1 대조 | VERIFY | ✅ | 1ms | DETAIL_VERIFY | +| 7 | [회계관리 > 매출관리] [VERIFY] 세금계산서/거래명세서 Switch 상태 확인 | VERIFY | ✅ | 2ms | SWITCH_VERIFY | +| 8 | [회계관리 > 매출관리] [VERIFY] 수정 모드 진입 가능 확인 | VERIFY | ✅ | 2023ms | EDIT_ACCESS | +| 9 | [회계관리 > 매출관리] [CANCEL] 취소 클릭 | CANCEL | ✅ | 2007ms | CANCEL | +| 10 | [회계관리 > 매출관리] [CANCEL] 목록 복귀 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 목록 복귀 후 테이블 확인 | VERIFY | ✅ | 504ms | BACK_VERIFY / rows:2 | +| 12 | [회계관리 > 매출관리] [VERIFY] 취소 후 데이터 무변경 확인 | VERIFY | ✅ | 514ms | NO_CHANGE_VERIFY | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 84ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_23-02-14.md b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_23-02-14.md new file mode 100644 index 0000000..3f6998c --- /dev/null +++ b/e2e/results/hotfix/success/OK-detail-verify-acc-sales_2026-03-04_23-02-14.md @@ -0,0 +1,36 @@ +# ✅ E2E 테스트 성공: 목록↔상세 필드별 대조 검증: 매출관리 + +**테스트 ID**: detail-verify-acc-sales | **실행**: 2026-03-04_23-02-14 | **결과**: PASS +**소요 시간**: 23.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 12 | 12 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5010ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [CAPTURE] 첫 행 모든 셀 값 캡처 | CAPTURE | ✅ | 515ms | CAPTURE / rows:20 | +| 4 | [회계관리 > 매출관리] [READ] 첫 행 클릭 → 상세 진입 | READ | ✅ | 2503ms | READ | +| 5 | [회계관리 > 매출관리] [READ] 상세 페이지 로드 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 6 | [회계관리 > 매출관리] [VERIFY] 상세 페이지 필드 1:1 대조 | VERIFY | ✅ | 1ms | DETAIL_VERIFY | +| 7 | [회계관리 > 매출관리] [VERIFY] 세금계산서/거래명세서 Switch 상태 확인 | VERIFY | ✅ | 0ms | SWITCH_VERIFY | +| 8 | [회계관리 > 매출관리] [VERIFY] 수정 모드 진입 가능 확인 | VERIFY | ✅ | 2004ms | EDIT_ACCESS | +| 9 | [회계관리 > 매출관리] [CANCEL] 취소 클릭 | CANCEL | ✅ | 2003ms | CANCEL | +| 10 | [회계관리 > 매출관리] [CANCEL] 목록 복귀 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 11 | [회계관리 > 매출관리] [VERIFY] 목록 복귀 후 테이블 확인 | VERIFY | ✅ | 506ms | BACK_VERIFY / rows:2 | +| 12 | [회계관리 > 매출관리] [VERIFY] 취소 후 데이터 무변경 확인 | VERIFY | ✅ | 504ms | NO_CHANGE_VERIFY | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 9 | 9 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-draft-box_2026-03-03_14-42-04.md b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_14-42-04.md new file mode 100644 index 0000000..cce621f --- /dev/null +++ b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_14-42-04.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-03_14-42-04 | **결과**: PASS +**소요 시간**: 11.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2519ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 0ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1006ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 273ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1009ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 309ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 324ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 309ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 2ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 2ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 69ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/e2e/results/hotfix/success/OK-draft-box_2026-03-03_15-46-37.md b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_15-46-37.md new file mode 100644 index 0000000..29ded4a --- /dev/null +++ b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_15-46-37.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-03_15-46-37 | **결과**: PASS +**소요 시간**: 11.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2529ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 217ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 304ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 313ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 302ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 1ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 2ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 73ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/e2e/results/hotfix/success/OK-draft-box_2026-03-03_21-43-39.md b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_21-43-39.md new file mode 100644 index 0000000..37219e9 --- /dev/null +++ b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_21-43-39.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-03_21-43-39 | **결과**: PASS +**소요 시간**: 11.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2509ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1010ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 218ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1012ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 318ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 312ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 306ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 0ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 1ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 70ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/e2e/results/hotfix/success/OK-draft-box_2026-03-03_22-43-51.md b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_22-43-51.md new file mode 100644 index 0000000..2e02310 --- /dev/null +++ b/e2e/results/hotfix/success/OK-draft-box_2026-03-03_22-43-51.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-03_22-43-51 | **결과**: PASS +**소요 시간**: 11.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2512ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 0ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1014ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 217ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1015ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 316ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 318ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 316ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 1ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 1ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 75ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/e2e/results/hotfix/success/OK-draft-box_2026-03-04_10-28-49.md b/e2e/results/hotfix/success/OK-draft-box_2026-03-04_10-28-49.md new file mode 100644 index 0000000..6171614 --- /dev/null +++ b/e2e/results/hotfix/success/OK-draft-box_2026-03-04_10-28-49.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-04_10-28-49 | **결과**: PASS +**소요 시간**: 11.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2511ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 0ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 1ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 0ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1010ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 215ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1004ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 314ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 316ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 317ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 1ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 1ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 1ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 1ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 97ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/e2e/results/hotfix/success/OK-draft-box_2026-03-04_23-02-27.md b/e2e/results/hotfix/success/OK-draft-box_2026-03-04_23-02-27.md new file mode 100644 index 0000000..f05ff32 --- /dev/null +++ b/e2e/results/hotfix/success/OK-draft-box_2026-03-04_23-02-27.md @@ -0,0 +1,41 @@ +# ✅ E2E 테스트 성공: 기안함 테스트 + +**테스트 ID**: draft-box | **실행**: 2026-03-04_23-02-27 | **결과**: PASS +**소요 시간**: 12.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 17 | 15 | 0 | 2 | 88% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 메뉴 진입: 결재관리 > 기안함 | - | ✅ | 2516ms | Menu navigation: 결재관리 > 기안함 | +| 2 | URL 검증 | - | ✅ | 1ms | URL verified: https://dev.codebridge-x.com/approval/draft | +| 3 | 필수 검증 #5: 목업 페이지 감지 | - | ✅ | 1ms | Real page: 1 inputs, 77 buttons | +| 4 | 통계 카드 확인 | - | ✅ | 1ms | Checks: 4/4 verified | +| 5 | 기안함 테이블 구조 확인 | - | ✅ | 0ms | Table: 8 cols, 20 rows | +| 6 | 목록 필터 테스트 | - | ✅ | 1ms | json_fail:Unexpected token 'F', "Filters found: 4" is not valid JSON/raw:Filters | +| 7 | 데이터 로드 확인 | - | ⚠️ | 1506ms | Detail checks: 0/1 matched | +| 8 | [SEARCH] 검색 기능 테스트 | SEARCH | ✅ | 206ms | Filled "input[type='search'], input[placeholder*='검색']" with "테스트" | +| 9 | [SEARCH] 검색 결과 확인 | SEARCH | ⚠️ | 1517ms | Detail checks: 0/1 matched | +| 10 | [SEARCH] 검색 초기화 | SEARCH | ✅ | 312ms | Clicked (existed): button:has-text('초기화'), button:has-text('전체'), button[class*= | +| 11 | 필터 기능 테스트 | - | ✅ | 305ms | Clicked (existed): select, [role='combobox'], button:has-text('임시저장') | +| 12 | [READ] 문서 상세 보기 | READ | ✅ | 316ms | Clicked (existed): table tbody tr:first-child td:nth-child(2), table tbody tr:fi | +| 13 | 상세 페이지/모달 확인 | - | ✅ | 1ms | Checks: 2/2 verified | +| 14 | 모달/상세 닫기 | - | ✅ | 1ms | No modal open | +| 15 | 페이지네이션 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 16 | 문서 작성 버튼 확인 | - | ✅ | 0ms | Checks: 1/1 verified | +| 17 | 콘솔 에러 확인 | - | ✅ | 0ms | Element exists: body | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 75ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/approval/draft | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_15-47-01.md b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_15-47-01.md new file mode 100644 index 0000000..4ec4409 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_15-47-01.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) + +**테스트 ID**: edge-boundary-acc-sales | **실행**: 2026-03-03_15-47-01 | **결과**: PASS +**소요 시간**: 23.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5014ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [EDGE] 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | [회계관리 > 매출관리] [EDGE] 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 5 | [회계관리 > 매출관리] [EDGE] 수량=0 입력 → 자동계산 반응 확인 | BOUNDARY | ✅ | 0ms | ZERO_QTY / 수량 필드 미발견 | +| 6 | [회계관리 > 매출관리] [EDGE] 수량=-1 입력 → 거부/에러 확인 | BOUNDARY | ✅ | 1ms | NEGATIVE_QTY / ⚠️ 음수 입력 에러 미표시 | +| 7 | [회계관리 > 매출관리] [EDGE] 단가=99999.99 소수점 입력 → 처리 확인 | BOUNDARY | ✅ | 0ms | DECIMAL_PRICE / 단가 필드 미발견 | +| 8 | [회계관리 > 매출관리] [EDGE] 품목명 255자 초과 입력 → 잘림/에러 확인 | BOUNDARY | ✅ | 535ms | MAX_LENGTH / ⚠️ 255자 초과 입력이 그대로 수용됨 (274자) | +| 9 | [회계관리 > 매출관리] [EDGE] 특수문자/XSS 입력 → 방어 확인 | BOUNDARY | ✅ | 531ms | XSS_CHECK / ⚠️ XSS 페이로드가 그대로 수용됨 - 서버 측 방어 확인 필요 | +| 10 | [회계관리 > 매출관리] [EDGE] 빈 폼 저장 시도 → 유효성 검사 확인 | BOUNDARY | ✅ | 3052ms | EMPTY_SUBMIT / ✅ 빈 폼 제출 시 유효성 검사 정상 동작 (시그널 2개) | +| 11 | [회계관리 > 매출관리] [EDGE] 빈 폼 제출 후 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 12 | [회계관리 > 매출관리] [EDGE] 유효성 검사 다이얼로그 닫기 | BOUNDARY | ✅ | 2ms | CLOSE_VALIDATION | +| 13 | [회계관리 > 매출관리] [EDGE] 경계값 종합 평가 | SUMMARY | ✅ | 0ms | BOUNDARY_SUMMARY / 경계값 테스트 6개 항목 실행 완료 | +| 14 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 65ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_21-44-03.md b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_21-44-03.md new file mode 100644 index 0000000..b5ad83d --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_21-44-03.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) + +**테스트 ID**: edge-boundary-acc-sales | **실행**: 2026-03-03_21-44-03 | **결과**: PASS +**소요 시간**: 23.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5013ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [EDGE] 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | [회계관리 > 매출관리] [EDGE] 폼 렌더링 대기 | - | ✅ | 2018ms | Waited 2000ms | +| 5 | [회계관리 > 매출관리] [EDGE] 수량=0 입력 → 자동계산 반응 확인 | BOUNDARY | ✅ | 2ms | ZERO_QTY / 수량 필드 미발견 | +| 6 | [회계관리 > 매출관리] [EDGE] 수량=-1 입력 → 거부/에러 확인 | BOUNDARY | ✅ | 1ms | NEGATIVE_QTY / ⚠️ 음수 입력 에러 미표시 | +| 7 | [회계관리 > 매출관리] [EDGE] 단가=99999.99 소수점 입력 → 처리 확인 | BOUNDARY | ✅ | 2ms | DECIMAL_PRICE / 단가 필드 미발견 | +| 8 | [회계관리 > 매출관리] [EDGE] 품목명 255자 초과 입력 → 잘림/에러 확인 | BOUNDARY | ✅ | 519ms | MAX_LENGTH / ⚠️ 255자 초과 입력이 그대로 수용됨 (274자) | +| 9 | [회계관리 > 매출관리] [EDGE] 특수문자/XSS 입력 → 방어 확인 | BOUNDARY | ✅ | 524ms | XSS_CHECK / ⚠️ XSS 페이로드가 그대로 수용됨 - 서버 측 방어 확인 필요 | +| 10 | [회계관리 > 매출관리] [EDGE] 빈 폼 저장 시도 → 유효성 검사 확인 | BOUNDARY | ✅ | 2986ms | EMPTY_SUBMIT / ✅ 빈 폼 제출 시 유효성 검사 정상 동작 (시그널 2개) | +| 11 | [회계관리 > 매출관리] [EDGE] 빈 폼 제출 후 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 12 | [회계관리 > 매출관리] [EDGE] 유효성 검사 다이얼로그 닫기 | BOUNDARY | ✅ | 2ms | CLOSE_VALIDATION | +| 13 | [회계관리 > 매출관리] [EDGE] 경계값 종합 평가 | SUMMARY | ✅ | 0ms | BOUNDARY_SUMMARY / 경계값 테스트 6개 항목 실행 완료 | +| 14 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2012ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 64ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_22-44-15.md b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_22-44-15.md new file mode 100644 index 0000000..bb85a90 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-03_22-44-15.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) + +**테스트 ID**: edge-boundary-acc-sales | **실행**: 2026-03-03_22-44-15 | **결과**: PASS +**소요 시간**: 23.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5001ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [EDGE] 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | [회계관리 > 매출관리] [EDGE] 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | [회계관리 > 매출관리] [EDGE] 수량=0 입력 → 자동계산 반응 확인 | BOUNDARY | ✅ | 2ms | ZERO_QTY / 수량 필드 미발견 | +| 6 | [회계관리 > 매출관리] [EDGE] 수량=-1 입력 → 거부/에러 확인 | BOUNDARY | ✅ | 2ms | NEGATIVE_QTY / ⚠️ 음수 입력 에러 미표시 | +| 7 | [회계관리 > 매출관리] [EDGE] 단가=99999.99 소수점 입력 → 처리 확인 | BOUNDARY | ✅ | 2ms | DECIMAL_PRICE / 단가 필드 미발견 | +| 8 | [회계관리 > 매출관리] [EDGE] 품목명 255자 초과 입력 → 잘림/에러 확인 | BOUNDARY | ✅ | 525ms | MAX_LENGTH / ⚠️ 255자 초과 입력이 그대로 수용됨 (274자) | +| 9 | [회계관리 > 매출관리] [EDGE] 특수문자/XSS 입력 → 방어 확인 | BOUNDARY | ✅ | 517ms | XSS_CHECK / ⚠️ XSS 페이로드가 그대로 수용됨 - 서버 측 방어 확인 필요 | +| 10 | [회계관리 > 매출관리] [EDGE] 빈 폼 저장 시도 → 유효성 검사 확인 | BOUNDARY | ✅ | 3022ms | EMPTY_SUBMIT / ✅ 빈 폼 제출 시 유효성 검사 정상 동작 (시그널 2개) | +| 11 | [회계관리 > 매출관리] [EDGE] 빈 폼 제출 후 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 12 | [회계관리 > 매출관리] [EDGE] 유효성 검사 다이얼로그 닫기 | BOUNDARY | ✅ | 0ms | CLOSE_VALIDATION | +| 13 | [회계관리 > 매출관리] [EDGE] 경계값 종합 평가 | SUMMARY | ✅ | 1ms | BOUNDARY_SUMMARY / 경계값 테스트 6개 항목 실행 완료 | +| 14 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2004ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_10-29-12.md b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_10-29-12.md new file mode 100644 index 0000000..652187f --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_10-29-12.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) + +**테스트 ID**: edge-boundary-acc-sales | **실행**: 2026-03-04_10-29-12 | **결과**: PASS +**소요 시간**: 23.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5001ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [EDGE] 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | [회계관리 > 매출관리] [EDGE] 폼 렌더링 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 5 | [회계관리 > 매출관리] [EDGE] 수량=0 입력 → 자동계산 반응 확인 | BOUNDARY | ✅ | 4ms | ZERO_QTY / 수량 필드 미발견 | +| 6 | [회계관리 > 매출관리] [EDGE] 수량=-1 입력 → 거부/에러 확인 | BOUNDARY | ✅ | 0ms | NEGATIVE_QTY / ⚠️ 음수 입력 에러 미표시 | +| 7 | [회계관리 > 매출관리] [EDGE] 단가=99999.99 소수점 입력 → 처리 확인 | BOUNDARY | ✅ | 1ms | DECIMAL_PRICE / 단가 필드 미발견 | +| 8 | [회계관리 > 매출관리] [EDGE] 품목명 255자 초과 입력 → 잘림/에러 확인 | BOUNDARY | ✅ | 523ms | MAX_LENGTH / ⚠️ 255자 초과 입력이 그대로 수용됨 (274자) | +| 9 | [회계관리 > 매출관리] [EDGE] 특수문자/XSS 입력 → 방어 확인 | BOUNDARY | ✅ | 517ms | XSS_CHECK / ⚠️ XSS 페이로드가 그대로 수용됨 - 서버 측 방어 확인 필요 | +| 10 | [회계관리 > 매출관리] [EDGE] 빈 폼 저장 시도 → 유효성 검사 확인 | BOUNDARY | ✅ | 2983ms | EMPTY_SUBMIT / ✅ 빈 폼 제출 시 유효성 검사 정상 동작 (시그널 2개) | +| 11 | [회계관리 > 매출관리] [EDGE] 빈 폼 제출 후 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 12 | [회계관리 > 매출관리] [EDGE] 유효성 검사 다이얼로그 닫기 | BOUNDARY | ✅ | 1ms | CLOSE_VALIDATION | +| 13 | [회계관리 > 매출관리] [EDGE] 경계값 종합 평가 | SUMMARY | ✅ | 0ms | BOUNDARY_SUMMARY / 경계값 테스트 6개 항목 실행 완료 | +| 14 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2015ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 63ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_23-02-51.md b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_23-02-51.md new file mode 100644 index 0000000..50a4b54 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-acc-sales_2026-03-04_23-02-51.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 검증 (회계 > 매출관리) + +**테스트 ID**: edge-boundary-acc-sales | **실행**: 2026-03-04_23-02-51 | **결과**: PASS +**소요 시간**: 23.6초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5001ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [EDGE] 등록 폼 열기 | OPEN_FORM | ✅ | 2513ms | OPEN_FORM | +| 4 | [회계관리 > 매출관리] [EDGE] 폼 렌더링 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 5 | [회계관리 > 매출관리] [EDGE] 수량=0 입력 → 자동계산 반응 확인 | BOUNDARY | ✅ | 2ms | ZERO_QTY / 수량 필드 미발견 | +| 6 | [회계관리 > 매출관리] [EDGE] 수량=-1 입력 → 거부/에러 확인 | BOUNDARY | ✅ | 0ms | NEGATIVE_QTY / ⚠️ 음수 입력 에러 미표시 | +| 7 | [회계관리 > 매출관리] [EDGE] 단가=99999.99 소수점 입력 → 처리 확인 | BOUNDARY | ✅ | 1ms | DECIMAL_PRICE / 단가 필드 미발견 | +| 8 | [회계관리 > 매출관리] [EDGE] 품목명 255자 초과 입력 → 잘림/에러 확인 | BOUNDARY | ✅ | 528ms | MAX_LENGTH / ⚠️ 255자 초과 입력이 그대로 수용됨 (274자) | +| 9 | [회계관리 > 매출관리] [EDGE] 특수문자/XSS 입력 → 방어 확인 | BOUNDARY | ✅ | 531ms | XSS_CHECK / ⚠️ XSS 페이로드가 그대로 수용됨 - 서버 측 방어 확인 필요 | +| 10 | [회계관리 > 매출관리] [EDGE] 빈 폼 저장 시도 → 유효성 검사 확인 | BOUNDARY | ✅ | 2994ms | EMPTY_SUBMIT / ✅ 빈 폼 제출 시 유효성 검사 정상 동작 (시그널 2개) | +| 11 | [회계관리 > 매출관리] [EDGE] 빈 폼 제출 후 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 12 | [회계관리 > 매출관리] [EDGE] 유효성 검사 다이얼로그 닫기 | BOUNDARY | ✅ | 1ms | CLOSE_VALIDATION | +| 13 | [회계관리 > 매출관리] [EDGE] 경계값 종합 평가 | SUMMARY | ✅ | 1ms | BOUNDARY_SUMMARY / 경계값 테스트 6개 항목 실행 완료 | +| 14 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_15-47-24.md b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_15-47-24.md new file mode 100644 index 0000000..31a96e8 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_15-47-24.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (회계 > 입금관리) + +**테스트 ID**: edge-boundary-input-accounting | **실행**: 2026-03-03_15-47-24 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2521ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1016ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 314ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1003ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1004ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 315ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1003ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2514ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2013ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_21-44-26.md b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_21-44-26.md new file mode 100644 index 0000000..0a6547a --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_21-44-26.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (회계 > 입금관리) + +**테스트 ID**: edge-boundary-input-accounting | **실행**: 2026-03-03_21-44-26 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1016ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 306ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1014ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 304ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1010ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 301ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1017ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2516ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2012ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_22-44-38.md b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_22-44-38.md new file mode 100644 index 0000000..e6ab5ff --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-03_22-44-38.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (회계 > 입금관리) + +**테스트 ID**: edge-boundary-input-accounting | **실행**: 2026-03-03_22-44-38 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2517ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2007ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1010ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 315ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1002ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 312ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1004ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1005ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2520ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2011ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_10-29-36.md b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_10-29-36.md new file mode 100644 index 0000000..5e004f2 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_10-29-36.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (회계 > 입금관리) + +**테스트 ID**: edge-boundary-input-accounting | **실행**: 2026-03-04_10-29-36 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1005ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1005ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 312ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1006ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 308ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1003ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2521ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2008ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_23-03-14.md b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_23-03-14.md new file mode 100644 index 0000000..1f9baa6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-accounting_2026-03-04_23-03-14.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (회계 > 입금관리) + +**테스트 ID**: edge-boundary-input-accounting | **실행**: 2026-03-04_23-03-14 | **결과**: PASS +**소요 시간**: 23.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2512ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1003ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 312ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1005ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1004ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1004ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2523ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2004ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 66ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_15-47-48.md b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_15-47-48.md new file mode 100644 index 0000000..fa2b941 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_15-47-48.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (인사 > 사원관리) + +**테스트 ID**: edge-boundary-input-hr | **실행**: 2026-03-03_15-47-48 | **결과**: PASS +**소요 시간**: 23.5초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2503ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2011ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1003ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 317ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1003ms | MAX_LENGTH_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 315ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1015ms | OVERFLOW_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 301ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1019ms | SPECIAL_CHARS_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 12 | 경계값: 공백만 입력 | - | ✅ | 311ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2519ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2004ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 64ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_21-44-50.md b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_21-44-50.md new file mode 100644 index 0000000..e8e946b --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_21-44-50.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (인사 > 사원관리) + +**테스트 ID**: edge-boundary-input-hr | **실행**: 2026-03-03_21-44-50 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2505ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1001ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 316ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1019ms | MAX_LENGTH_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1016ms | OVERFLOW_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1005ms | SPECIAL_CHARS_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 12 | 경계값: 공백만 입력 | - | ✅ | 312ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2517ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2014ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 63ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_22-45-01.md b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_22-45-01.md new file mode 100644 index 0000000..d6c9fbf --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-03_22-45-01.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (인사 > 사원관리) + +**테스트 ID**: edge-boundary-input-hr | **실행**: 2026-03-03_22-45-01 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2505ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1002ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 316ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1003ms | MAX_LENGTH_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 309ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1003ms | OVERFLOW_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1019ms | SPECIAL_CHARS_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 12 | 경계값: 공백만 입력 | - | ✅ | 316ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2523ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2006ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 75ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_10-29-59.md b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_10-29-59.md new file mode 100644 index 0000000..53d5c3c --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_10-29-59.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (인사 > 사원관리) + +**테스트 ID**: edge-boundary-input-hr | **실행**: 2026-03-04_10-29-59 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2509ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2005ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1002ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 310ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1005ms | MAX_LENGTH_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1011ms | OVERFLOW_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1003ms | SPECIAL_CHARS_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 12 | 경계값: 공백만 입력 | - | ✅ | 310ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2522ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2013ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 69ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_23-03-37.md b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_23-03-37.md new file mode 100644 index 0000000..fd840de --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-hr_2026-03-04_23-03-37.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (인사 > 사원관리) + +**테스트 ID**: edge-boundary-input-hr | **실행**: 2026-03-04_23-03-37 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1002ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 307ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1010ms | MAX_LENGTH_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 315ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1015ms | OVERFLOW_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 301ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1003ms | SPECIAL_CHARS_CHECK / ⚠️ 경계값 입력 시 에러 미감지 (정상 가능) | +| 12 | 경계값: 공백만 입력 | - | ✅ | 314ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2517ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2007ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 95ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_15-48-11.md b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_15-48-11.md new file mode 100644 index 0000000..be3542a --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_15-48-11.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (판매 > 거래처관리) + +**테스트 ID**: edge-boundary-input-sales | **실행**: 2026-03-03_15-48-11 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2502ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1010ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 319ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1002ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 310ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1004ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1018ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 313ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2520ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 31ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_21-45-13.md b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_21-45-13.md new file mode 100644 index 0000000..825621a --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_21-45-13.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (판매 > 거래처관리) + +**테스트 ID**: edge-boundary-input-sales | **실행**: 2026-03-03_21-45-13 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3007ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2504ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2013ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1002ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 315ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1016ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1016ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 317ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1002ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 305ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2513ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2012ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 28ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_22-45-25.md b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_22-45-25.md new file mode 100644 index 0000000..1f4d8fc --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-03_22-45-25.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (판매 > 거래처관리) + +**테스트 ID**: edge-boundary-input-sales | **실행**: 2026-03-03_22-45-25 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2510ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1013ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 305ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1012ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1001ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1015ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 314ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2518ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2010ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_10-30-22.md b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_10-30-22.md new file mode 100644 index 0000000..b41f2ba --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_10-30-22.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (판매 > 거래처관리) + +**테스트 ID**: edge-boundary-input-sales | **실행**: 2026-03-04_10-30-22 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2504ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2012ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1004ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 310ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1002ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 301ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1012ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 302ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1002ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 312ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2510ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2007ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 50ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_23-04-01.md b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_23-04-01.md new file mode 100644 index 0000000..281339a --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-boundary-input-sales_2026-03-04_23-04-01.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 경계값 입력 (판매 > 거래처관리) + +**테스트 ID**: edge-boundary-input-sales | **실행**: 2026-03-04_23-04-01 | **결과**: PASS +**소요 시간**: 23.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2501ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1006ms | FIND_INPUTS | +| 6 | 경계값: 최대 길이 입력 | - | ✅ | 309ms | Boundary fill [empty]: "" | +| 7 | 최대 길이 결과 확인 | MAX_LENGTH_CHECK | ✅ | 1002ms | MAX_LENGTH_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 경계값: 오버플로우 입력 | - | ✅ | 307ms | Boundary fill [empty]: "" | +| 9 | 오버플로우 결과 확인 | OVERFLOW_CHECK | ✅ | 1009ms | OVERFLOW_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 경계값: 특수문자(XSS) 입력 | - | ✅ | 312ms | Boundary fill [empty]: "" | +| 11 | 특수문자 결과 확인 | SPECIAL_CHARS_CHECK | ✅ | 1006ms | SPECIAL_CHARS_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값: 공백만 입력 | - | ✅ | 303ms | Boundary fill [empty]: "" | +| 13 | 경계값 상태로 저장 시도 | BOUNDARY_SUBMIT_CHECK | ✅ | 2530ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 14 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2013ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 34ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_15-48-25.md b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_15-48-25.md new file mode 100644 index 0000000..3d2d16f --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_15-48-25.md @@ -0,0 +1,29 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 동시 액션 (인사 > 근태관리) + +**테스트 ID**: edge-concurrent-action-hr | **실행**: 2026-03-03_15-48-25 | **결과**: PASS +**소요 시간**: 13.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 5 | 5 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 탭/필터 빠른 전환 테스트 | RAPID_TAB_SWITCH | ✅ | 2671ms | RAPID_TAB_SWITCH / ✅ 빠른 전환 후 정상 상태 | +| 4 | 페이지네이션 빠른 클릭 | RAPID_PAGINATION | ✅ | 2ms | RAPID_PAGINATION / W:페이지네이션 버튼 부족 | +| 5 | 다중 버튼 동시 클릭 시뮬레이션 | MULTI_BUTTON_CLICK | ✅ | 2132ms | MULTI_BUTTON_CLICK / ✅ 다중 버튼 클릭 후 정상 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_21-45-27.md b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_21-45-27.md new file mode 100644 index 0000000..accd36f --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_21-45-27.md @@ -0,0 +1,29 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 동시 액션 (인사 > 근태관리) + +**테스트 ID**: edge-concurrent-action-hr | **실행**: 2026-03-03_21-45-27 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 5 | 5 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 탭/필터 빠른 전환 테스트 | RAPID_TAB_SWITCH | ✅ | 2639ms | RAPID_TAB_SWITCH / ✅ 빠른 전환 후 정상 상태 | +| 4 | 페이지네이션 빠른 클릭 | RAPID_PAGINATION | ✅ | 2ms | RAPID_PAGINATION / W:페이지네이션 버튼 부족 | +| 5 | 다중 버튼 동시 클릭 시뮬레이션 | MULTI_BUTTON_CLICK | ✅ | 2115ms | MULTI_BUTTON_CLICK / ✅ 다중 버튼 클릭 후 정상 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_22-45-39.md b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_22-45-39.md new file mode 100644 index 0000000..263b83b --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-03_22-45-39.md @@ -0,0 +1,29 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 동시 액션 (인사 > 근태관리) + +**테스트 ID**: edge-concurrent-action-hr | **실행**: 2026-03-03_22-45-39 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 5 | 5 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 탭/필터 빠른 전환 테스트 | RAPID_TAB_SWITCH | ✅ | 2687ms | RAPID_TAB_SWITCH / ✅ 빠른 전환 후 정상 상태 | +| 4 | 페이지네이션 빠른 클릭 | RAPID_PAGINATION | ✅ | 1ms | RAPID_PAGINATION / W:페이지네이션 버튼 부족 | +| 5 | 다중 버튼 동시 클릭 시뮬레이션 | MULTI_BUTTON_CLICK | ✅ | 2114ms | MULTI_BUTTON_CLICK / ✅ 다중 버튼 클릭 후 정상 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_10-30-36.md b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_10-30-36.md new file mode 100644 index 0000000..c5f54d7 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_10-30-36.md @@ -0,0 +1,29 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 동시 액션 (인사 > 근태관리) + +**테스트 ID**: edge-concurrent-action-hr | **실행**: 2026-03-04_10-30-36 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 5 | 5 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 탭/필터 빠른 전환 테스트 | RAPID_TAB_SWITCH | ✅ | 2655ms | RAPID_TAB_SWITCH / ✅ 빠른 전환 후 정상 상태 | +| 4 | 페이지네이션 빠른 클릭 | RAPID_PAGINATION | ✅ | 2ms | RAPID_PAGINATION / W:페이지네이션 버튼 부족 | +| 5 | 다중 버튼 동시 클릭 시뮬레이션 | MULTI_BUTTON_CLICK | ✅ | 2112ms | MULTI_BUTTON_CLICK / ✅ 다중 버튼 클릭 후 정상 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_23-04-15.md b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_23-04-15.md new file mode 100644 index 0000000..3bb4523 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-concurrent-action-hr_2026-03-04_23-04-15.md @@ -0,0 +1,29 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 동시 액션 (인사 > 근태관리) + +**테스트 ID**: edge-concurrent-action-hr | **실행**: 2026-03-04_23-04-15 | **결과**: PASS +**소요 시간**: 13.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 5 | 5 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 탭/필터 빠른 전환 테스트 | RAPID_TAB_SWITCH | ✅ | 2681ms | RAPID_TAB_SWITCH / ✅ 빠른 전환 후 정상 상태 | +| 4 | 페이지네이션 빠른 클릭 | RAPID_PAGINATION | ✅ | 1ms | RAPID_PAGINATION / W:페이지네이션 버튼 부족 | +| 5 | 다중 버튼 동시 클릭 시뮬레이션 | MULTI_BUTTON_CLICK | ✅ | 2098ms | MULTI_BUTTON_CLICK / ✅ 다중 버튼 클릭 후 정상 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 0 | 0 | 0 | 0ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/attendance-management | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_15-48-44.md b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_15-48-44.md new file mode 100644 index 0000000..23a8ab6 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_15-48-44.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) + +**테스트 ID**: edge-empty-submit-accounting | **실행**: 2026-03-03_15-48-44 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2519ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1016ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 83ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_21-45-46.md b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_21-45-46.md new file mode 100644 index 0000000..1ac47d4 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_21-45-46.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) + +**테스트 ID**: edge-empty-submit-accounting | **실행**: 2026-03-03_21-45-46 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2518ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2018ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 65ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_22-45-58.md b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_22-45-58.md new file mode 100644 index 0000000..e78a790 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-03_22-45-58.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) + +**테스트 ID**: edge-empty-submit-accounting | **실행**: 2026-03-03_22-45-58 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2511ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2012ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 78ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_10-30-55.md b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_10-30-55.md new file mode 100644 index 0000000..cbdb796 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_10-30-55.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) + +**테스트 ID**: edge-empty-submit-accounting | **실행**: 2026-03-04_10-30-55 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2508ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2512ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2009ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_23-04-34.md b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_23-04-34.md new file mode 100644 index 0000000..ac7b22c --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-accounting_2026-03-04_23-04-34.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (회계 > 입금관리) + +**테스트 ID**: edge-empty-submit-accounting | **실행**: 2026-03-04_23-04-34 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2505ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1011ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2008ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_15-49-03.md b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_15-49-03.md new file mode 100644 index 0000000..32c8318 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_15-49-03.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) + +**테스트 ID**: edge-empty-submit-board | **실행**: 2026-03-03_15-49-03 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2522ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1012ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2015ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 63ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_21-46-05.md b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_21-46-05.md new file mode 100644 index 0000000..2d6019f --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_21-46-05.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) + +**테스트 ID**: edge-empty-submit-board | **실행**: 2026-03-03_21-46-05 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2521ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2535ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1013ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 54ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_22-46-17.md b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_22-46-17.md new file mode 100644 index 0000000..88dc1ea --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-03_22-46-17.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) + +**테스트 ID**: edge-empty-submit-board | **실행**: 2026-03-03_22-46-17 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3016ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2517ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1000ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2014ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 54ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_10-31-14.md b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_10-31-14.md new file mode 100644 index 0000000..150c3f1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_10-31-14.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) + +**테스트 ID**: edge-empty-submit-board | **실행**: 2026-03-04_10-31-14 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2004ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2510ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1007ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2018ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_23-04-53.md b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_23-04-53.md new file mode 100644 index 0000000..a9c78ef --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-board_2026-03-04_23-04-53.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (게시판 > 자유게시판) + +**테스트 ID**: edge-empty-submit-board | **실행**: 2026-03-04_23-04-53 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2518ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2011ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 84ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_15-49-22.md b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_15-49-22.md new file mode 100644 index 0000000..cf7ff73 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_15-49-22.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) + +**테스트 ID**: edge-empty-submit-hr | **실행**: 2026-03-03_15-49-22 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3000ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2017ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2519ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1014ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2014ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_21-46-25.md b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_21-46-25.md new file mode 100644 index 0000000..92d2962 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_21-46-25.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) + +**테스트 ID**: edge-empty-submit-hr | **실행**: 2026-03-03_21-46-25 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2505ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2518ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1013ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2017ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_22-46-36.md b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_22-46-36.md new file mode 100644 index 0000000..3607d0c --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-03_22-46-36.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) + +**테스트 ID**: edge-empty-submit-hr | **실행**: 2026-03-03_22-46-36 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2502ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2010ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2523ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2011ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_10-31-34.md b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_10-31-34.md new file mode 100644 index 0000000..28fc4e1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_10-31-34.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) + +**테스트 ID**: edge-empty-submit-hr | **실행**: 2026-03-04_10-31-34 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2512ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1004ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 76ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_23-05-12.md b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_23-05-12.md new file mode 100644 index 0000000..282bf16 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-hr_2026-03-04_23-05-12.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (인사 > 사원관리) + +**테스트 ID**: edge-empty-submit-hr | **실행**: 2026-03-04_23-05-12 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3008ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2517ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1002ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 6 | 6 | 0 | 76ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/hr/employee-management | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_15-49-41.md b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_15-49-41.md new file mode 100644 index 0000000..0927c06 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_15-49-41.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) + +**테스트 ID**: edge-empty-submit-sales | **실행**: 2026-03-03_15-49-41 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2507ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2009ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2508ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2010ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 23ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_21-46-44.md b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_21-46-44.md new file mode 100644 index 0000000..1dc1341 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_21-46-44.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) + +**테스트 ID**: edge-empty-submit-sales | **실행**: 2026-03-03_21-46-44 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3017ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2509ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1008ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2015ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 29ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_22-46-55.md b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_22-46-55.md new file mode 100644 index 0000000..380d7ca --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-03_22-46-55.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) + +**테스트 ID**: edge-empty-submit-sales | **실행**: 2026-03-03_22-46-55 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3014ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2517ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2516ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2012ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 26ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_10-31-53.md b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_10-31-53.md new file mode 100644 index 0000000..4191daf --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_10-31-53.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) + +**테스트 ID**: edge-empty-submit-sales | **실행**: 2026-03-04_10-31-53 | **결과**: PASS +**소요 시간**: 19.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2506ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2512ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1013ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2017ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 26ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_23-05-31.md b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_23-05-31.md new file mode 100644 index 0000000..d279bdf --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-empty-submit-sales_2026-03-04_23-05-31.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 빈 폼 제출 (판매 > 거래처관리) + +**테스트 ID**: edge-empty-submit-sales | **실행**: 2026-03-04_23-05-31 | **결과**: PASS +**소요 시간**: 19.1초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 5 | 빈 상태로 저장 클릭 | EMPTY_SUBMIT_CHECK | ✅ | 2530ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 6 | 결과 확인 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 7 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2004ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 35ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_15-50-05.md b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_15-50-05.md new file mode 100644 index 0000000..199099f --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_15-50-05.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 숫자 경계값 (회계 > 입금관리) + +**테스트 ID**: edge-numeric-boundary-accounting | **실행**: 2026-03-03_15-50-05 | **결과**: PASS +**소요 시간**: 23.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 13 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3013ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2503ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1002ms | FIND_INPUTS | +| 6 | 숫자 필드 탐색 및 0 입력 | NUMERIC_ZERO | ✅ | 532ms | NUMERIC_ZERO | +| 7 | 0 입력 결과 확인 | NUMERIC_ZERO_CHECK | ✅ | 1014ms | NUMERIC_ZERO_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 숫자 필드에 음수 입력 | NUMERIC_NEGATIVE | ✅ | 516ms | NUMERIC_NEGATIVE | +| 9 | 음수 입력 결과 확인 | NUMERIC_NEGATIVE_CHECK | ✅ | 1004ms | NUMERIC_NEGATIVE_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 숫자 필드에 최대값 입력 | NUMERIC_MAX | ✅ | 517ms | NUMERIC_MAX | +| 11 | 최대값 입력 결과 확인 | NUMERIC_MAX_CHECK | ✅ | 1017ms | NUMERIC_MAX_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값 상태로 저장 시도 | NUMERIC_SUBMIT_CHECK | ✅ | 2514ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 13 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2019ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 60ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_21-47-07.md b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_21-47-07.md new file mode 100644 index 0000000..be28d03 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_21-47-07.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 숫자 경계값 (회계 > 입금관리) + +**테스트 ID**: edge-numeric-boundary-accounting | **실행**: 2026-03-03_21-47-07 | **결과**: PASS +**소요 시간**: 23.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 13 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2016ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1015ms | FIND_INPUTS | +| 6 | 숫자 필드 탐색 및 0 입력 | NUMERIC_ZERO | ✅ | 519ms | NUMERIC_ZERO | +| 7 | 0 입력 결과 확인 | NUMERIC_ZERO_CHECK | ✅ | 1004ms | NUMERIC_ZERO_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 숫자 필드에 음수 입력 | NUMERIC_NEGATIVE | ✅ | 516ms | NUMERIC_NEGATIVE | +| 9 | 음수 입력 결과 확인 | NUMERIC_NEGATIVE_CHECK | ✅ | 1012ms | NUMERIC_NEGATIVE_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 숫자 필드에 최대값 입력 | NUMERIC_MAX | ✅ | 515ms | NUMERIC_MAX | +| 11 | 최대값 입력 결과 확인 | NUMERIC_MAX_CHECK | ✅ | 1002ms | NUMERIC_MAX_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값 상태로 저장 시도 | NUMERIC_SUBMIT_CHECK | ✅ | 2524ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 13 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2009ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_22-47-19.md b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_22-47-19.md new file mode 100644 index 0000000..b1e90de --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-03_22-47-19.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 숫자 경계값 (회계 > 입금관리) + +**테스트 ID**: edge-numeric-boundary-accounting | **실행**: 2026-03-03_22-47-19 | **결과**: PASS +**소요 시간**: 23.7초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 13 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2003ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1017ms | FIND_INPUTS | +| 6 | 숫자 필드 탐색 및 0 입력 | NUMERIC_ZERO | ✅ | 513ms | NUMERIC_ZERO | +| 7 | 0 입력 결과 확인 | NUMERIC_ZERO_CHECK | ✅ | 1002ms | NUMERIC_ZERO_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 숫자 필드에 음수 입력 | NUMERIC_NEGATIVE | ✅ | 516ms | NUMERIC_NEGATIVE | +| 9 | 음수 입력 결과 확인 | NUMERIC_NEGATIVE_CHECK | ✅ | 1003ms | NUMERIC_NEGATIVE_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 숫자 필드에 최대값 입력 | NUMERIC_MAX | ✅ | 512ms | NUMERIC_MAX | +| 11 | 최대값 입력 결과 확인 | NUMERIC_MAX_CHECK | ✅ | 1002ms | NUMERIC_MAX_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값 상태로 저장 시도 | NUMERIC_SUBMIT_CHECK | ✅ | 2507ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 13 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2010ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_10-32-17.md b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_10-32-17.md new file mode 100644 index 0000000..63ba18e --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_10-32-17.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 숫자 경계값 (회계 > 입금관리) + +**테스트 ID**: edge-numeric-boundary-accounting | **실행**: 2026-03-04_10-32-17 | **결과**: PASS +**소요 시간**: 23.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 13 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2506ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1005ms | FIND_INPUTS | +| 6 | 숫자 필드 탐색 및 0 입력 | NUMERIC_ZERO | ✅ | 510ms | NUMERIC_ZERO | +| 7 | 0 입력 결과 확인 | NUMERIC_ZERO_CHECK | ✅ | 1009ms | NUMERIC_ZERO_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 숫자 필드에 음수 입력 | NUMERIC_NEGATIVE | ✅ | 510ms | NUMERIC_NEGATIVE | +| 9 | 음수 입력 결과 확인 | NUMERIC_NEGATIVE_CHECK | ✅ | 1007ms | NUMERIC_NEGATIVE_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 숫자 필드에 최대값 입력 | NUMERIC_MAX | ✅ | 515ms | NUMERIC_MAX | +| 11 | 최대값 입력 결과 확인 | NUMERIC_MAX_CHECK | ✅ | 1012ms | NUMERIC_MAX_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값 상태로 저장 시도 | NUMERIC_SUBMIT_CHECK | ✅ | 2516ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 13 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2004ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 68ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_23-05-55.md b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_23-05-55.md new file mode 100644 index 0000000..fcb75da --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-numeric-boundary-accounting_2026-03-04_23-05-55.md @@ -0,0 +1,37 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 숫자 경계값 (회계 > 입금관리) + +**테스트 ID**: edge-numeric-boundary-accounting | **실행**: 2026-03-04_23-05-55 | **결과**: PASS +**소요 시간**: 23.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 13 | 13 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3004ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2513ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 입력 필드 탐색 | FIND_INPUTS | ✅ | 1005ms | FIND_INPUTS | +| 6 | 숫자 필드 탐색 및 0 입력 | NUMERIC_ZERO | ✅ | 510ms | NUMERIC_ZERO | +| 7 | 0 입력 결과 확인 | NUMERIC_ZERO_CHECK | ✅ | 1011ms | NUMERIC_ZERO_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 8 | 숫자 필드에 음수 입력 | NUMERIC_NEGATIVE | ✅ | 523ms | NUMERIC_NEGATIVE | +| 9 | 음수 입력 결과 확인 | NUMERIC_NEGATIVE_CHECK | ✅ | 1007ms | NUMERIC_NEGATIVE_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 10 | 숫자 필드에 최대값 입력 | NUMERIC_MAX | ✅ | 513ms | NUMERIC_MAX | +| 11 | 최대값 입력 결과 확인 | NUMERIC_MAX_CHECK | ✅ | 1017ms | NUMERIC_MAX_CHECK / ✅ 경계값 입력 시 에러/경고 감지 | +| 12 | 경계값 상태로 저장 시도 | NUMERIC_SUBMIT_CHECK | ✅ | 2521ms | EMPTY_SUBMIT_CHECK / ✅ 유효성 검사 정상 동작 | +| 13 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2008ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 104ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/deposits | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_15-50-32.md b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_15-50-32.md new file mode 100644 index 0000000..617ab78 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_15-50-32.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) + +**테스트 ID**: edge-rapid-click-acc-sales | **실행**: 2026-03-03_15-50-32 | **결과**: PASS +**소요 시간**: 27.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5017ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [RAPID] 헤더 체크박스 10회 연타 → 최종 상태 일관성 | RAPID_CLICK | ✅ | 1550ms | RAPID_HEADER_CHECKBOX / ✅ 10회 연타 후 체크박스 일관성 유지 (unchecked, body: 0/20) | +| 4 | [회계관리 > 매출관리] [RAPID] 체크박스 연타 후 안정화 대기 | - | ✅ | 1000ms | Waited 1000ms | +| 5 | [회계관리 > 매출관리] [RAPID] 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 6 | [회계관리 > 매출관리] [RAPID] 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [RAPID] 등록 버튼 5회 연타 → 중복 제출 방지 확인 | RAPID_CLICK | ✅ | 3288ms | RAPID_SUBMIT / ✅ 5회 연타 시 중복 제출 방지 (POST 0회) | +| 8 | [회계관리 > 매출관리] [RAPID] 연타 후 상태 확인 + 다이얼로그 닫기 | RAPID_CLICK | ✅ | 1020ms | RAPID_RESULT | +| 9 | [회계관리 > 매출관리] [RAPID] 품목 추가 버튼 10회 연타 → 적절한 행 수 확인 | RAPID_CLICK | ✅ | 2845ms | RAPID_ADD_ITEM / ✅ 10회 연타 후 품목 행 10개 추가 (합리적) | +| 10 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2018ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 67ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_21-47-35.md b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_21-47-35.md new file mode 100644 index 0000000..17941a1 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_21-47-35.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) + +**테스트 ID**: edge-rapid-click-acc-sales | **실행**: 2026-03-03_21-47-35 | **결과**: PASS +**소요 시간**: 27.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5004ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [RAPID] 헤더 체크박스 10회 연타 → 최종 상태 일관성 | RAPID_CLICK | ✅ | 1567ms | RAPID_HEADER_CHECKBOX / ✅ 10회 연타 후 체크박스 일관성 유지 (unchecked, body: 0/20) | +| 4 | [회계관리 > 매출관리] [RAPID] 체크박스 연타 후 안정화 대기 | - | ✅ | 1001ms | Waited 1000ms | +| 5 | [회계관리 > 매출관리] [RAPID] 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 6 | [회계관리 > 매출관리] [RAPID] 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [RAPID] 등록 버튼 5회 연타 → 중복 제출 방지 확인 | RAPID_CLICK | ✅ | 3295ms | RAPID_SUBMIT / ✅ 5회 연타 시 중복 제출 방지 (POST 0회) | +| 8 | [회계관리 > 매출관리] [RAPID] 연타 후 상태 확인 + 다이얼로그 닫기 | RAPID_CLICK | ✅ | 1008ms | RAPID_RESULT | +| 9 | [회계관리 > 매출관리] [RAPID] 품목 추가 버튼 10회 연타 → 적절한 행 수 확인 | RAPID_CLICK | ✅ | 2847ms | RAPID_ADD_ITEM / ✅ 10회 연타 후 품목 행 10개 추가 (합리적) | +| 10 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2020ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 69ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_22-47-46.md b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_22-47-46.md new file mode 100644 index 0000000..06353cd --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-03_22-47-46.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) + +**테스트 ID**: edge-rapid-click-acc-sales | **실행**: 2026-03-03_22-47-46 | **결과**: PASS +**소요 시간**: 27.4초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5005ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [RAPID] 헤더 체크박스 10회 연타 → 최종 상태 일관성 | RAPID_CLICK | ✅ | 1567ms | RAPID_HEADER_CHECKBOX / ✅ 10회 연타 후 체크박스 일관성 유지 (unchecked, body: 0/20) | +| 4 | [회계관리 > 매출관리] [RAPID] 체크박스 연타 후 안정화 대기 | - | ✅ | 1016ms | Waited 1000ms | +| 5 | [회계관리 > 매출관리] [RAPID] 등록 폼 열기 | OPEN_FORM | ✅ | 2516ms | OPEN_FORM | +| 6 | [회계관리 > 매출관리] [RAPID] 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [RAPID] 등록 버튼 5회 연타 → 중복 제출 방지 확인 | RAPID_CLICK | ✅ | 3300ms | RAPID_SUBMIT / ✅ 5회 연타 시 중복 제출 방지 (POST 0회) | +| 8 | [회계관리 > 매출관리] [RAPID] 연타 후 상태 확인 + 다이얼로그 닫기 | RAPID_CLICK | ✅ | 1001ms | RAPID_RESULT | +| 9 | [회계관리 > 매출관리] [RAPID] 품목 추가 버튼 10회 연타 → 적절한 행 수 확인 | RAPID_CLICK | ✅ | 2847ms | RAPID_ADD_ITEM / ✅ 10회 연타 후 품목 행 10개 추가 (합리적) | +| 10 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2017ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 67ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_10-32-44.md b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_10-32-44.md new file mode 100644 index 0000000..5ea7aac --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_10-32-44.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) + +**테스트 ID**: edge-rapid-click-acc-sales | **실행**: 2026-03-04_10-32-44 | **결과**: PASS +**소요 시간**: 27.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5005ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [RAPID] 헤더 체크박스 10회 연타 → 최종 상태 일관성 | RAPID_CLICK | ✅ | 1568ms | RAPID_HEADER_CHECKBOX / ✅ 10회 연타 후 체크박스 일관성 유지 (unchecked, body: 0/20) | +| 4 | [회계관리 > 매출관리] [RAPID] 체크박스 연타 후 안정화 대기 | - | ✅ | 1006ms | Waited 1000ms | +| 5 | [회계관리 > 매출관리] [RAPID] 등록 폼 열기 | OPEN_FORM | ✅ | 2504ms | OPEN_FORM | +| 6 | [회계관리 > 매출관리] [RAPID] 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [RAPID] 등록 버튼 5회 연타 → 중복 제출 방지 확인 | RAPID_CLICK | ✅ | 3300ms | RAPID_SUBMIT / ✅ 5회 연타 시 중복 제출 방지 (POST 0회) | +| 8 | [회계관리 > 매출관리] [RAPID] 연타 후 상태 확인 + 다이얼로그 닫기 | RAPID_CLICK | ✅ | 1004ms | RAPID_RESULT | +| 9 | [회계관리 > 매출관리] [RAPID] 품목 추가 버튼 10회 연타 → 적절한 행 수 확인 | RAPID_CLICK | ✅ | 2834ms | RAPID_ADD_ITEM / ✅ 10회 연타 후 품목 행 10개 추가 (합리적) | +| 10 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2013ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 86ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_23-06-22.md b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_23-06-22.md new file mode 100644 index 0000000..c51cb6f --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-acc-sales_2026-03-04_23-06-22.md @@ -0,0 +1,34 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: UI 내구성 연타 테스트 (회계 > 매출관리) + +**테스트 ID**: edge-rapid-click-acc-sales | **실행**: 2026-03-04_23-06-22 | **결과**: PASS +**소요 시간**: 27.3초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 10 | 10 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | [회계관리 > 매출관리] 페이지 로드 대기 | - | ✅ | 5000ms | Waited 5000ms | +| 2 | [회계관리 > 매출관리] 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | [회계관리 > 매출관리] [RAPID] 헤더 체크박스 10회 연타 → 최종 상태 일관성 | RAPID_CLICK | ✅ | 1565ms | RAPID_HEADER_CHECKBOX / ✅ 10회 연타 후 체크박스 일관성 유지 (unchecked, body: 0/20) | +| 4 | [회계관리 > 매출관리] [RAPID] 체크박스 연타 후 안정화 대기 | - | ✅ | 1003ms | Waited 1000ms | +| 5 | [회계관리 > 매출관리] [RAPID] 등록 폼 열기 | OPEN_FORM | ✅ | 2512ms | OPEN_FORM | +| 6 | [회계관리 > 매출관리] [RAPID] 폼 렌더링 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 7 | [회계관리 > 매출관리] [RAPID] 등록 버튼 5회 연타 → 중복 제출 방지 확인 | RAPID_CLICK | ✅ | 3281ms | RAPID_SUBMIT / ✅ 5회 연타 시 중복 제출 방지 (POST 0회) | +| 8 | [회계관리 > 매출관리] [RAPID] 연타 후 상태 확인 + 다이얼로그 닫기 | RAPID_CLICK | ✅ | 1007ms | RAPID_RESULT | +| 9 | [회계관리 > 매출관리] [RAPID] 품목 추가 버튼 10회 연타 → 적절한 행 수 확인 | RAPID_CLICK | ✅ | 2856ms | RAPID_ADD_ITEM / ✅ 10회 연타 후 품목 행 10개 추가 (합리적) | +| 10 | [회계관리 > 매출관리] [CLOSE] 폼/모달 닫기 → 목록 복귀 | CLOSE_FORM | ✅ | 2007ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 65ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/accounting/sales | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_15-50-48.md b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_15-50-48.md new file mode 100644 index 0000000..7b274ba --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_15-50-48.md @@ -0,0 +1,30 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-delete | **실행**: 2026-03-03_15-50-48 | **결과**: PASS +**소요 시간**: 15.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 6 | 6 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 첫 번째 행 클릭 | - | ✅ | 517ms | Clicked first row | +| 4 | 상세 페이지 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 5 | 삭제 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_DELETE | ✅ | 2318ms | RAPID_CLICK_DELETE | +| 6 | 연타 후 상태 확인 | RAPID_DELETE_RESULT | ✅ | 2016ms | RAPID_DELETE_RESULT / ✅ 연타 클릭 후 정상 상태 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 84ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_21-47-51.md b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_21-47-51.md new file mode 100644 index 0000000..884aadc --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_21-47-51.md @@ -0,0 +1,30 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-delete | **실행**: 2026-03-03_21-47-51 | **결과**: PASS +**소요 시간**: 15.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 6 | 6 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 첫 번째 행 클릭 | - | ✅ | 505ms | Clicked first row | +| 4 | 상세 페이지 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 5 | 삭제 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_DELETE | ✅ | 2302ms | RAPID_CLICK_DELETE | +| 6 | 연타 후 상태 확인 | RAPID_DELETE_RESULT | ✅ | 2009ms | RAPID_DELETE_RESULT / ✅ 연타 클릭 후 정상 상태 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 70ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_22-48-02.md b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_22-48-02.md new file mode 100644 index 0000000..6c6acad --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-03_22-48-02.md @@ -0,0 +1,30 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-delete | **실행**: 2026-03-03_22-48-02 | **결과**: PASS +**소요 시간**: 15.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 6 | 6 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3010ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 첫 번째 행 클릭 | - | ✅ | 503ms | Clicked first row | +| 4 | 상세 페이지 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 5 | 삭제 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_DELETE | ✅ | 2285ms | RAPID_CLICK_DELETE | +| 6 | 연타 후 상태 확인 | RAPID_DELETE_RESULT | ✅ | 2017ms | RAPID_DELETE_RESULT / ✅ 연타 클릭 후 정상 상태 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 82ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_10-33-00.md b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_10-33-00.md new file mode 100644 index 0000000..1fc790b --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_10-33-00.md @@ -0,0 +1,30 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-delete | **실행**: 2026-03-04_10-33-00 | **결과**: PASS +**소요 시간**: 15.8초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 6 | 6 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3002ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 첫 번째 행 클릭 | - | ✅ | 510ms | Clicked first row | +| 4 | 상세 페이지 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 5 | 삭제 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_DELETE | ✅ | 2272ms | RAPID_CLICK_DELETE | +| 6 | 연타 후 상태 확인 | RAPID_DELETE_RESULT | ✅ | 2012ms | RAPID_DELETE_RESULT / ✅ 연타 클릭 후 정상 상태 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 93ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_23-06-38.md b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_23-06-38.md new file mode 100644 index 0000000..c62d6bb --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-delete_2026-03-04_23-06-38.md @@ -0,0 +1,30 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 삭제 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-delete | **실행**: 2026-03-04_23-06-38 | **결과**: PASS +**소요 시간**: 15.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 6 | 6 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | 첫 번째 행 클릭 | - | ✅ | 510ms | Clicked first row | +| 4 | 상세 페이지 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 5 | 삭제 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_DELETE | ✅ | 2270ms | RAPID_CLICK_DELETE | +| 6 | 연타 후 상태 확인 | RAPID_DELETE_RESULT | ✅ | 2012ms | RAPID_DELETE_RESULT / ✅ 연타 클릭 후 정상 상태 | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 4 | 4 | 0 | 61ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_15-51-08.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_15-51-08.md new file mode 100644 index 0000000..609a234 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_15-51-08.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-save-board | **실행**: 2026-03-03_15-51-08 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2001ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2301ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2004ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2011ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 59ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_21-48-11.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_21-48-11.md new file mode 100644 index 0000000..47f005d --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_21-48-11.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-save-board | **실행**: 2026-03-03_21-48-11 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3009ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2514ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2315ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2005ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2015ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_22-48-22.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_22-48-22.md new file mode 100644 index 0000000..766e724 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-03_22-48-22.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-save-board | **실행**: 2026-03-03_22-48-22 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3012ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2519ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2014ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2301ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2003ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2014ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 56ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_10-33-20.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_10-33-20.md new file mode 100644 index 0000000..acd29ea --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_10-33-20.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-save-board | **실행**: 2026-03-04_10-33-20 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3005ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2517ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2295ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2007ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2005ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 62ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_23-06-58.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_23-06-58.md new file mode 100644 index 0000000..51709a2 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-board_2026-03-04_23-06-58.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (게시판 > 자유게시판) + +**테스트 ID**: edge-rapid-click-save-board | **실행**: 2026-03-04_23-06-58 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2506ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2293ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2002ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2006ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 5 | 5 | 0 | 81ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/boards/free | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_15-51-28.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_15-51-28.md new file mode 100644 index 0000000..e60ce7a --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_15-51-28.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) + +**테스트 ID**: edge-rapid-click-save-sales | **실행**: 2026-03-03_15-51-28 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3006ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2002ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2284ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2003ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2011ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 22ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_21-48-31.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_21-48-31.md new file mode 100644 index 0000000..2b688bc --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_21-48-31.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) + +**테스트 ID**: edge-rapid-click-save-sales | **실행**: 2026-03-03_21-48-31 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2515ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2000ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2283ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2004ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2007ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 137ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_22-48-42.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_22-48-42.md new file mode 100644 index 0000000..03165ed --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-03_22-48-42.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) + +**테스트 ID**: edge-rapid-click-save-sales | **실행**: 2026-03-03_22-48-42 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3001ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2509ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2008ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2301ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2004ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2016ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 34ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_10-33-39.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_10-33-39.md new file mode 100644 index 0000000..1da0204 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_10-33-39.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) + +**테스트 ID**: edge-rapid-click-save-sales | **실행**: 2026-03-04_10-33-39 | **결과**: PASS +**소요 시간**: 19.9초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2501ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2015ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2277ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2006ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2003ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 30ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_23-07-18.md b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_23-07-18.md new file mode 100644 index 0000000..664c074 --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-rapid-click-save-sales_2026-03-04_23-07-18.md @@ -0,0 +1,31 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 저장 버튼 연타 (판매 > 거래처관리) + +**테스트 ID**: edge-rapid-click-save-sales | **실행**: 2026-03-04_23-07-18 | **결과**: PASS +**소요 시간**: 20.0초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 7 | 7 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3003ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 1ms | Table loaded: 20 rows | +| 3 | 등록 폼 열기 | OPEN_FORM | ✅ | 2511ms | OPEN_FORM | +| 4 | 폼 렌더링 대기 | - | ✅ | 2016ms | Waited 2000ms | +| 6 | 저장 버튼 연타 (5회, 50ms 간격) | RAPID_CLICK_SAVE | ✅ | 2283ms | RAPID_CLICK_SAVE | +| 7 | 연타 후 상태 확인 | RAPID_CLICK_RESULT | ✅ | 2007ms | RAPID_CLICK_RESULT / ✅ 연타 클릭 후 정상 상태 | +| 8 | 폼/모달 닫기 | CLOSE_FORM | ✅ | 2011ms | CLOSE_FORM | + +## API 요약 +| 총 호출 | 성공 | 실패 | 평균 응답 | 느린 호출(>2s) | +|---------|------|------|----------|--------------| +| 2 | 2 | 0 | 79ms | 0 | + +## 페이지 건강 검사 +| 항목 | 결과 | +|------|------| +| 상태 | ✅ 정상 | +| URL | https://dev.codebridge-x.com/sales/client-management-sales-admin | diff --git a/e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-03_15-52-00.md b/e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-03_15-52-00.md new file mode 100644 index 0000000..924d7ef --- /dev/null +++ b/e2e/results/hotfix/success/OK-edge-special-chars-board_2026-03-03_15-52-00.md @@ -0,0 +1,38 @@ +# ✅ E2E 테스트 성공: 엣지 케이스: 특수문자 검색 (게시판 > 자유게시판) + +**테스트 ID**: edge-special-chars-board | **실행**: 2026-03-03_15-52-00 | **결과**: PASS +**소요 시간**: 32.2초 + +## 테스트 요약 +| 전체 | 성공 | 실패 | 경고 | 성공률 | +|------|------|------|------|--------| +| 14 | 14 | 0 | 0 | 100% | + +## 전체 스텝 결과 +| # | 스텝 | Phase | 상태 | 소요시간 | 비고 | +|---|------|-------|------|---------|------| +| 1 | 페이지 로드 대기 | - | ✅ | 3011ms | Waited 3000ms | +| 2 | 테이블 로드 대기 | - | ✅ | 0ms | Table loaded: 10 rows | +| 3 | 특수문자 검색: