2026-01-30 10:50:38 +09:00
{
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"enabled" : true ,
2026-01-30 10:50:38 +09:00
"id" : "receiving-management" ,
"name" : "입고관리 테스트" ,
"screenshotPolicy" : {
"onErrorOnly" : true ,
2026-02-09 15:05:03 +09:00
"captureOn" : [
"error" ,
"fail" ,
"timeout" ,
"404" ,
"500" ,
"blocked"
]
2026-01-30 10:50:38 +09:00
} ,
"description" : "자재관리 > 입고관리 페이지의 입고 조회 및 상태별 필터링 기능을 테스트하는 E2E 테스트" ,
"baseUrl" : "https://dev.codebridge-x.com" ,
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"url" : "/material/receiving-management" ,
2026-01-30 21:47:29 +09:00
"navigation" : {
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"targetUrl" : "/material/receiving-management" ,
"urlPattern" : "/material/receiving-management|/ko/material/receiving-management" ,
2026-02-09 15:05:03 +09:00
"menuHints" : [
"입고관리" ,
"입고 관리" ,
"자재관리"
]
2026-01-30 21:47:29 +09:00
} ,
2026-01-30 10:50:38 +09:00
"menuNavigation" : {
"level1" : "자재관리" ,
"level2" : "입고관리" ,
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"expectedUrl" : "/material/receiving-management" ,
2026-02-04 21:59:56 +09:00
"searchWithinParent" : true ,
"closeOtherMenus" : true
2026-01-30 10:50:38 +09:00
} ,
"menuNavigationEnhanced" : {
"strategy" : "scroll-and-search" ,
"sidebar" : {
"scrollContainer" : ".sidebar-scroll" ,
"scrollStep" : 200 ,
"maxScrollAttempts" : 5 ,
"waitAfterScroll" : 300
} ,
"level1" : {
"text" : "자재관리" ,
"expandable" : true ,
"waitAfterClick" : 500
} ,
"level2" : {
"text" : "입고관리" ,
"waitAfterClick" : 300
} ,
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"fallbackUrl" : "/material/receiving-management" ,
"expectedUrl" : "/material/receiving-management"
2026-01-30 10:50:38 +09:00
} ,
"timeout" : 90000 ,
2026-02-09 15:05:03 +09:00
"tags" : [
"material" ,
"receiving" ,
"read-only"
] ,
2026-02-04 21:59:56 +09:00
"auth" : {
"username" : "TestUser5" ,
"password" : "password123!"
2026-01-30 10:50:38 +09:00
} ,
"steps" : [
{
2026-02-09 15:05:03 +09:00
"id" : 1 ,
2026-01-30 16:26:52 +09:00
"name" : "사이드바 메뉴 전체 펼치기" ,
"description" : "모두 펼치기 버튼을 클릭하여 전체 메뉴를 펼친 후 메뉴 탐색 준비" ,
2026-02-28 17:21:01 +09:00
"action" : "evaluate" ,
"script" : "(async()=>{document.querySelector('.sidebar-scroll')?.scrollTo({top:0,behavior:'instant'});await new Promise(r=>setTimeout(r,300));Array.from(document.querySelectorAll('button')).find(b=>b.innerText?.includes('모두 펼치기'))?.click();await new Promise(r=>setTimeout(r,2000));})()"
2026-01-30 10:50:38 +09:00
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 2 ,
2026-01-30 10:50:38 +09:00
"name" : "자재관리 메뉴 진입" ,
"description" : "자재관리 > 입고관리 메뉴로 이동" ,
2026-02-28 17:21:01 +09:00
"action" : "menu_navigate" ,
"level1" : "자재관리" ,
"level2" : "입고관리" ,
2026-01-30 10:50:38 +09:00
"expect" : {
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"url" : "/material/receiving-management" ,
2026-02-09 15:05:03 +09:00
"visible" : [
"입고 목록"
]
2026-01-30 10:50:38 +09:00
} ,
"fallback" : {
"type" : "navigate" ,
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"url" : "/material/receiving-management"
2026-01-30 10:50:38 +09:00
}
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 3 ,
2026-01-30 10:50:38 +09:00
"name" : "페이지 구조 확인" ,
"description" : "통계 카드와 테이블 구조 확인" ,
2026-02-28 17:21:01 +09:00
"action" : "verify_detail" ,
"checks" : [
"입고대기" ,
"배송중" ,
"검사대기" ,
"금일입고"
] ,
"expected" : "통계 카드(입고대기/배송중/검사대기/금일입고) 및 테이블 컬럼(번호/발주번호/품목코드/품목명/공급업체/발주수량/입고수량/LOT번호/상태) 확인" ,
2026-01-30 10:50:38 +09:00
"verify" : {
2026-02-09 15:05:03 +09:00
"visible" : [
"입고대기" ,
"배송중" ,
"검사대기" ,
"금일입고"
] ,
"tableColumns" : [
"번호" ,
"발주번호" ,
"품목코드" ,
"품목명" ,
"공급업체" ,
"발주수량" ,
"입고수량" ,
"LOT번호" ,
"상태"
]
2026-01-30 10:50:38 +09:00
}
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 4 ,
2026-01-30 10:50:38 +09:00
"name" : "필수 검증 #3: 상태 탭 필터 - 입고대기" ,
"description" : "입고대기 탭 클릭하여 필터링 확인" ,
2026-02-28 17:21:01 +09:00
"action" : "click_if_exists" ,
"target" : "입고대기" ,
"role" : "tab" ,
2026-01-30 10:50:38 +09:00
"expect" : {
"tabActive" : "입고대기" ,
"dataFiltered" : true
}
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 5 ,
2026-01-30 10:50:38 +09:00
"name" : "필수 검증 #3: 상태 탭 필터 - 입고완료" ,
"description" : "입고완료 탭 클릭하여 필터링 확인" ,
2026-02-28 17:21:01 +09:00
"action" : "click_if_exists" ,
"target" : "입고완료" ,
"role" : "tab" ,
2026-01-30 10:50:38 +09:00
"expect" : {
"tabActive" : "입고완료" ,
"dataFiltered" : true
}
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 6 ,
2026-01-30 10:50:38 +09:00
"name" : "전체 탭으로 복귀" ,
"description" : "전체 탭 클릭하여 모든 입고 표시" ,
2026-02-28 17:21:01 +09:00
"action" : "click_if_exists" ,
"target" : "전체" ,
"role" : "tab" ,
2026-01-30 10:50:38 +09:00
"expect" : {
"tabActive" : "전체" ,
"allDataShown" : true
}
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 7 ,
2026-01-30 10:50:38 +09:00
"name" : "빈 상태 확인" ,
"description" : "데이터가 없을 때 빈 상태 메시지 확인" ,
2026-02-28 17:21:01 +09:00
"action" : "verify_element" ,
"target" : "body" ,
"expected" : "검색 결과가 없습니다" ,
2026-01-30 10:50:38 +09:00
"verify" : {
"emptyStateVisible" : "검색 결과가 없습니다"
}
} ,
{
2026-02-09 15:05:03 +09:00
"id" : 8 ,
"name" : "콘솔 에러 확인" ,
"action" : "verify_element" ,
"target" : "body"
} ,
{
"id" : 9 ,
2026-01-30 10:50:38 +09:00
"name" : "통계 카드 값 확인" ,
"description" : "입고대기/배송중/검사대기/금일입고 카운트 표시 확인" ,
2026-02-28 17:21:01 +09:00
"action" : "verify_elements" ,
"checks" : [
"입고대기" ,
"배송중" ,
"검사대기" ,
"금일입고"
] ,
2026-01-30 10:50:38 +09:00
"verify" : {
2026-02-09 15:05:03 +09:00
"statsCards" : [
"입고대기" ,
"배송중" ,
"검사대기" ,
"금일입고"
] ,
2026-01-30 10:50:38 +09:00
"countsDisplayed" : true
}
}
] ,
"assertions" : [
{
"type" : "url" ,
refactor: E2E 시나리오 전면 개선 (43파일)
- Phase 0: 미구현 모듈 시나리오 13개 삭제 (구매관리, 중복, 라우트 없음)
- Phase 2: Settings URL 불일치 수정 (position, attendance, vacation-policy, bank-account, account, notification)
- Phase 3-4: 비설정 시나리오 URL/메뉴/UI 수정 (inventory-status, receiving-management, price-management, customer-inquiry, shipment-management, sales-client, quality-certification, customer-notice, production-* 등)
- Phase 5-6: 복잡 시나리오 재작성 (draft-box 50→14스텝, department-add 18→10스텝, free-board 70→22스텝, crud-delete-freeboard 14→17스텝)
- 16개 disabled 시나리오 enabled 전환
- 비표준 액션(fillInModal, randomData, usePlaywrightNative 등) → step-executor 표준 액션으로 통일
2026-02-06 17:37:35 +09:00
"expected" : "/material/receiving-management" ,
2026-01-30 10:50:38 +09:00
"message" : "입고관리 페이지에 머물러야 함"
} ,
{
"type" : "elementExists" ,
"selector" : "text=입고 목록" ,
"message" : "입고 목록 제목이 표시되어야 함"
}
] ,
"mandatoryVerifications" : {
"description" : "E2E_TEST_CONFIG.md 기준 필수 검증 항목" ,
"items" : [
{
"id" : 3 ,
"name" : "검색/필터" ,
"trigger" : "상태 탭 필터" ,
"verification" : "데이터 변화 확인" ,
"failCondition" : "필터 적용 후 데이터 무변화"
}
]
} ,
"notes" : {
"testScope" : "입고 목록 조회 및 상태별 필터링 테스트" ,
"pageType" : "조회 전용 (발주 기반 입고 처리)" ,
2026-02-09 15:05:03 +09:00
"statsCards" : [
"입고대기" ,
"배송중" ,
"검사대기" ,
"금일입고"
] ,
"statusTabs" : [
"전체" ,
"입고대기" ,
"입고완료"
] ,
"tableColumns" : [
"번호" ,
"발주번호" ,
"품목코드" ,
"품목명" ,
"공급업체" ,
"발주수량" ,
"입고수량" ,
"LOT번호" ,
"상태"
] ,
2026-01-30 10:50:38 +09:00
"workflow" : "발주 → 배송중 → 검사대기 → 입고완료" ,
"prerequisites" : "로그인된 사용자, 발주 데이터 존재 시 입고 가능"
}
2026-02-28 17:21:01 +09:00
}