Files
sam-scenarios/hr-employee.json

156 lines
3.8 KiB
JSON
Raw Normal View History

{
"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": "사원 등록"
}
]
}