새 시나리오: - 품질관리: quality-inspection, quality-certification - 품목관리: item-master - 인사관리: hr-employee, hr-department, hr-card, hr-attendance-status, hr-attendance-admin, hr-salary, hr-vacation - 리포트: report-analysis - 고객센터: customer-notice - 설정: settings-account, settings-permission, settings-rank, settings-popup, settings-company, settings-subscription - 판매관리: sales-quotation, sales-order, sales-pricing, sales-client - 구매관리: purchase-client, purchase-order, purchase-status - 생산관리: production-item, production-work-result - 자재관리: material-stock, material-receiving - 출고관리: shipment-management - 차량관리: vehicle-management - 회계관리: accounting-client, accounting-ledger, accounting-deposit, accounting-withdrawal, accounting-payment Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
156 lines
3.8 KiB
JSON
156 lines
3.8 KiB
JSON
{
|
|
"id": "hr-employee",
|
|
"name": "사원관리 테스트",
|
|
"screenshotPolicy": {
|
|
"onErrorOnly": true,
|
|
"captureOn": ["error", "fail", "timeout", "404", "500", "blocked"]
|
|
},
|
|
"description": "인사관리 > 사원관리 메뉴의 목록 조회, 검색, CRUD 기능 테스트",
|
|
"baseUrl": "https://dev.codebridge-x.com",
|
|
"menuNavigation": {
|
|
"level1": "인사관리",
|
|
"level2": "사원관리",
|
|
"expectedUrl": "/hr/employee-management"
|
|
},
|
|
"auth": {
|
|
"username": "TestUser5",
|
|
"password": "password123!"
|
|
},
|
|
"steps": [
|
|
{
|
|
"id": 1,
|
|
"name": "메뉴 진입: 인사관리 > 사원관리",
|
|
"action": "menu_navigate",
|
|
"level1": "인사관리",
|
|
"level2": "사원관리",
|
|
"expected": {
|
|
"url_contains": "/hr/employee",
|
|
"visible": ["사원관리", "사원"]
|
|
}
|
|
},
|
|
{
|
|
"id": 2,
|
|
"name": "필수 검증 #5: 목업 페이지 감지",
|
|
"action": "verify_not_mockup",
|
|
"checks": [
|
|
"검색 입력 필드 존재",
|
|
"테이블 데이터 표시",
|
|
"사원 등록 버튼 존재"
|
|
],
|
|
"expected": "정상 페이지 (목업 아님)"
|
|
},
|
|
{
|
|
"id": 3,
|
|
"name": "테이블 구조 확인",
|
|
"action": "verify_table",
|
|
"checks": [
|
|
"사원명 컬럼",
|
|
"부서 컬럼",
|
|
"직급 컬럼",
|
|
"입사일 컬럼"
|
|
],
|
|
"expected": "주요 컬럼 존재"
|
|
},
|
|
{
|
|
"id": 4,
|
|
"name": "검색 기능 테스트",
|
|
"action": "fill",
|
|
"target": "input[placeholder*='검색']",
|
|
"value": "홍길동",
|
|
"expected": "검색어 입력됨"
|
|
},
|
|
{
|
|
"id": 5,
|
|
"name": "검색 결과 확인",
|
|
"action": "wait",
|
|
"duration": 500,
|
|
"expected": "검색 결과 표시"
|
|
},
|
|
{
|
|
"id": 6,
|
|
"name": "검색 초기화",
|
|
"action": "clear",
|
|
"target": "input[placeholder*='검색']",
|
|
"expected": "검색어 삭제"
|
|
},
|
|
{
|
|
"id": 7,
|
|
"name": "사원 등록 버튼 클릭",
|
|
"action": "click",
|
|
"target": "사원 등록",
|
|
"expected": "등록 폼/모달 열림"
|
|
},
|
|
{
|
|
"id": 8,
|
|
"name": "등록 폼 확인",
|
|
"action": "verify_elements",
|
|
"checks": [
|
|
"이름 입력 필드",
|
|
"이메일 입력 필드",
|
|
"아이디 입력 필드",
|
|
"비밀번호 입력 필드",
|
|
"입사일 입력 필드"
|
|
],
|
|
"expected": "등록 폼 표시"
|
|
},
|
|
{
|
|
"id": 9,
|
|
"name": "등록 폼 닫기",
|
|
"action": "click",
|
|
"target": "취소",
|
|
"expected": "등록 폼 닫힘"
|
|
},
|
|
{
|
|
"id": 10,
|
|
"name": "테이블 행 클릭 - 상세 페이지",
|
|
"action": "click",
|
|
"target": "table tbody tr:first-child",
|
|
"expected": "상세 페이지로 이동"
|
|
},
|
|
{
|
|
"id": 11,
|
|
"name": "상세 페이지 요소 확인",
|
|
"action": "verify_elements",
|
|
"checks": [
|
|
"사원 정보 표시",
|
|
"목록 버튼 존재",
|
|
"수정 버튼 존재"
|
|
],
|
|
"expected": "상세 정보 정상 표시"
|
|
},
|
|
{
|
|
"id": 12,
|
|
"name": "목록으로 돌아가기",
|
|
"action": "click",
|
|
"target": "목록",
|
|
"expected": "목록 페이지로 복귀"
|
|
}
|
|
],
|
|
"requiredVerifications": [
|
|
{
|
|
"id": 3,
|
|
"name": "검색/필터",
|
|
"steps": [4, 5, 6],
|
|
"criteria": "검색 시 데이터 변화 확인"
|
|
},
|
|
{
|
|
"id": 5,
|
|
"name": "목업 페이지 감지",
|
|
"steps": [2],
|
|
"criteria": "입력 필드, 동작 버튼, 테이블 데이터 확인"
|
|
}
|
|
],
|
|
"expectedAPIs": [
|
|
{
|
|
"method": "GET",
|
|
"endpoint": "/api/v1/employees",
|
|
"description": "사원 목록 조회"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"endpoint": "/api/v1/employees",
|
|
"description": "사원 등록"
|
|
}
|
|
]
|
|
}
|