- accounting-cost (원가관리): 사이드바 메뉴 미존재 - accounting-financial (재무제표): 사이드바 메뉴 미존재 - inspection-management (검사관리): 사이드바 메뉴 미존재 - vehicle-management (차량관리): 1차 메뉴 미존재 - comprehensive-analysis (종합분석): 리포트 메뉴 미존재 - report-analysis (종합분석): 리포트 메뉴 미존재 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
238 lines
7.6 KiB
JSON
238 lines
7.6 KiB
JSON
{
|
|
"id": "payment-history",
|
|
"name": "결제내역 테스트",
|
|
"screenshotPolicy": {
|
|
"onErrorOnly": true,
|
|
"captureOn": ["error", "fail", "timeout", "404", "500", "blocked"]
|
|
},
|
|
"description": "회계관리 > 결제내역 메뉴의 결제 내역 조회 기능 테스트",
|
|
"baseUrl": "https://dev.codebridge-x.com",
|
|
"url": "/payment-history",
|
|
|
|
"navigation": {
|
|
"targetUrl": "/payment-history",
|
|
"urlPattern": "/payment-history|/ko/payment-history",
|
|
"menuHints": ["결제내역", "결제 내역", "회계관리"]
|
|
},
|
|
"menuNavigation": {
|
|
"level1": "회계관리",
|
|
"level2": "결제내역",
|
|
"expectedUrl": "/payment-history",
|
|
"searchWithinParent": true,
|
|
"closeOtherMenus": true
|
|
},
|
|
"auth": {
|
|
"username": "TestUser5",
|
|
"password": "password123!"
|
|
},
|
|
"menuNavigationEnhanced": {
|
|
"strategy": "scroll-and-search",
|
|
"description": "사이드바를 스크롤하며 메뉴를 찾고 클릭하여 404를 방지",
|
|
"level1": "회계관리",
|
|
"level2": "결제내역",
|
|
"alternativeLevel1Names": ["회계관리", "회계 관리", "Accounting", "재무관리"],
|
|
"alternativeLevel2Names": ["결제내역", "결제 내역", "Payment History", "결제이력"],
|
|
"fallbackUrls": [
|
|
"/payment-history",
|
|
"/accounting/payment-history",
|
|
"/ko/payment-history"
|
|
],
|
|
"scrollConfig": {
|
|
"sidebarSelector": "nav, aside, [role='navigation'], .sidebar, #sidebar, .sidebar-scroll",
|
|
"menuItemSelector": "a, button, [role='menuitem'], [role='treeitem'], span",
|
|
"scrollStep": 200,
|
|
"maxScrollAttempts": 10,
|
|
"scrollDelay": 300
|
|
}
|
|
},
|
|
|
|
"testFocus": {
|
|
"primary": "결제 내역 데이터 표시 및 조회 기능 검증",
|
|
"description": "결제 내역 테이블 표시, 검색, 필터, 페이지네이션 동작 확인"
|
|
},
|
|
|
|
"prerequisites": {
|
|
"authentication": true,
|
|
"testData": {
|
|
"description": "결제 내역 데이터가 최소 1개 이상 존재해야 함"
|
|
}
|
|
},
|
|
|
|
"expectedAPIs": [
|
|
{
|
|
"method": "GET",
|
|
"endpoint": "/api/v1/accounting/payments",
|
|
"params": "page=1&per_page=20",
|
|
"description": "결제 내역 목록 조회"
|
|
}
|
|
],
|
|
|
|
"steps": [
|
|
{
|
|
"id": 0,
|
|
"name": "사이드바 메뉴 전체 펼치기",
|
|
"description": "모두 펼치기 버튼을 클릭하여 전체 메뉴를 펼친 후 메뉴 탐색 준비",
|
|
"actions": [
|
|
{
|
|
"type": "evaluate",
|
|
"script": "document.querySelector('.sidebar-scroll')?.scrollTo({top:0,behavior:'instant'})"
|
|
},
|
|
{ "type": "wait", "duration": 300 },
|
|
{
|
|
"type": "evaluate",
|
|
"script": "Array.from(document.querySelectorAll('button')).find(b => b.innerText?.includes('모두 펼치기'))?.click()"
|
|
},
|
|
{ "type": "wait", "duration": 2000 }
|
|
],
|
|
"verification": [
|
|
"사이드바가 화면에 보이는지 확인",
|
|
"회계관리 메뉴가 보이는지 확인"
|
|
]
|
|
},
|
|
{
|
|
"id": 1,
|
|
"name": "1차 메뉴 찾기: 회계관리",
|
|
"description": "사이드바에서 '회계관리' 메뉴를 찾아 클릭",
|
|
"actions": [
|
|
{
|
|
"type": "scrollAndFind",
|
|
"target": "회계관리",
|
|
"alternativeTexts": ["회계관리", "회계 관리", "Accounting"],
|
|
"scrollContainer": "sidebar",
|
|
"maxAttempts": 10,
|
|
"description": "스크롤하며 회계관리 메뉴 찾기"
|
|
},
|
|
{ "type": "click", "target": "회계관리", "description": "회계관리 메뉴 클릭" },
|
|
{ "type": "wait", "duration": 500, "description": "서브메뉴 펼쳐지기 대기" }
|
|
],
|
|
"verification": [
|
|
"회계관리 메뉴가 클릭되었는지 확인",
|
|
"서브메뉴가 펼쳐졌는지 확인"
|
|
]
|
|
},
|
|
{
|
|
"id": 2,
|
|
"name": "2차 메뉴 찾기: 결제내역",
|
|
"description": "서브메뉴에서 '결제내역'을 찾아 클릭",
|
|
"actions": [
|
|
{
|
|
"type": "scrollAndFind",
|
|
"target": "결제내역",
|
|
"alternativeTexts": ["결제내역", "결제 내역", "Payment History"],
|
|
"scrollContainer": "submenu",
|
|
"maxAttempts": 5,
|
|
"description": "서브메뉴에서 결제내역 찾기"
|
|
},
|
|
{ "type": "click", "target": "결제내역", "description": "결제내역 메뉴 클릭" },
|
|
{ "type": "wait", "target": "페이지 로드 완료", "timeout": 10000 }
|
|
],
|
|
"verification": [
|
|
"결제내역 메뉴 클릭 성공",
|
|
"페이지 이동 완료"
|
|
]
|
|
},
|
|
{
|
|
"id": 3,
|
|
"name": "404 에러 감지",
|
|
"description": "페이지 로드 후 404 에러 여부 확인",
|
|
"actions": [
|
|
{ "type": "wait", "duration": 1000 },
|
|
{ "type": "checkFor404", "indicators": [
|
|
"페이지를 찾을 수 없습니다",
|
|
"404",
|
|
"Not Found",
|
|
"존재하지 않거나"
|
|
]}
|
|
],
|
|
"verification": [
|
|
"404 에러 메시지가 없는지 확인"
|
|
]
|
|
},
|
|
{
|
|
"id": 4,
|
|
"name": "페이지 정상 로드 확인",
|
|
"description": "결제내역 페이지가 정상적으로 로드되었는지 확인",
|
|
"actions": [
|
|
{ "type": "verify", "target": "pageTitle", "contains": ["결제내역", "결제 내역", "Payment"] },
|
|
{ "type": "verify", "target": "pageContent", "notContains": ["404", "찾을 수 없습니다", "Not Found"] }
|
|
],
|
|
"verification": [
|
|
"페이지 제목 '결제내역' 표시",
|
|
"404 에러 메시지 미표시"
|
|
],
|
|
"successCriteria": {
|
|
"urlPattern": "/accounting/payment",
|
|
"requiredElements": ["결제", "내역"]
|
|
}
|
|
},
|
|
{
|
|
"id": 5,
|
|
"name": "페이지 구조 확인",
|
|
"description": "페이지 타이틀, 설명 확인",
|
|
"actions": [
|
|
{ "type": "verify", "target": "페이지 구조" }
|
|
],
|
|
"expected": {
|
|
"pageTitle": "결제내역",
|
|
"pageDescription": "결제 내역을 확인합니다"
|
|
}
|
|
},
|
|
{
|
|
"id": 6,
|
|
"name": "테이블 구조 확인",
|
|
"description": "결제 내역 테이블의 컬럼 헤더 확인",
|
|
"actions": [
|
|
{ "type": "verify", "target": "table columns" }
|
|
],
|
|
"expected": {
|
|
"tableExists": true,
|
|
"hasColumns": true
|
|
}
|
|
},
|
|
{
|
|
"id": 7,
|
|
"name": "데이터 로드 확인",
|
|
"description": "결제 내역 데이터가 테이블에 표시되는지 확인",
|
|
"actions": [
|
|
{ "type": "verify", "target": "table data" }
|
|
],
|
|
"expected": {
|
|
"dataExists": "데이터 행 존재 또는 '데이터가 없습니다' 메시지"
|
|
}
|
|
},
|
|
{
|
|
"id": 8,
|
|
"name": "페이지네이션 확인",
|
|
"description": "테이블 하단에 페이지네이션이 표시되는지 확인",
|
|
"actions": [
|
|
{ "type": "verify", "target": "pagination component" }
|
|
],
|
|
"expected": {
|
|
"paginationExists": true
|
|
}
|
|
},
|
|
{
|
|
"id": 9,
|
|
"name": "콘솔 에러 확인",
|
|
"description": "페이지 동작 중 콘솔에 에러가 발생하지 않는지 확인",
|
|
"actions": [
|
|
{ "type": "verify", "target": "console errors" }
|
|
],
|
|
"expected": {
|
|
"noErrors": "콘솔 에러 없음"
|
|
}
|
|
}
|
|
],
|
|
|
|
"cleanup": {
|
|
"description": "테스트 후 정리 작업 (없음)",
|
|
"actions": []
|
|
},
|
|
|
|
"notes": [
|
|
"직접 URL 접근 금지: 반드시 메뉴 클릭으로 페이지 진입 (404 방지)",
|
|
"스크롤 필수: 회계관리 메뉴는 사이드바 하단에 위치",
|
|
"메뉴 계층: 회계관리 > 결제내역"
|
|
]
|
|
}
|