refactor: 28개 시나리오 JSON 업데이트

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
김보곤
2026-02-06 14:14:09 +09:00
parent f7dece7d1f
commit b2509ee2dc
28 changed files with 354 additions and 1327 deletions

View File

@@ -18,6 +18,16 @@
"username": "TestUser5",
"password": "password123!"
},
"selectors": {
"planCard": ".card, [class*='plan'], [class*='Plan'], [class*='subscription']",
"priceText": "[class*='price'], [class*='Price'], [class*='amount'], [class*='cost']",
"dateInfo": "[class*='date'], [class*='period'], time",
"paymentInfo": "[class*='payment'], [class*='billing'], [class*='card']",
"planTable": "table, [class*='plan-compare'], [class*='pricing-table']",
"actionButton": "button, [role='button']",
"usageCard": "[class*='usage'], [class*='quota'], [class*='limit']",
"historyTable": "table tbody tr, [class*='history'] li, [class*='payment-list']"
},
"steps": [
{
"id": 1,
@@ -43,101 +53,64 @@
},
{
"id": 3,
"name": "현재 플랜 정보 확인",
"action": "verify_elements",
"checks": [
"현재 플랜명 표시",
"플랜 가격 표시",
"포함 기능 표시"
],
"expected": "현재 플랜 정보 표시"
"name": "현재 플랜 카드 존재 확인",
"action": "verify_element",
"target": "planCard",
"verification": { "exists": true }
},
{
"id": 4,
"name": "구독 기간 확인",
"action": "verify_elements",
"checks": [
"구독 시작일 표시",
"구독 종료일 표시",
"남은 기간 표시"
],
"expected": "구독 기간 표시"
"name": "플랜/가격 정보 텍스트 확인",
"action": "evaluate",
"script": "(() => { const text = document.body.innerText; return text.includes('플랜') || text.includes('요금') || text.includes('Plan') || text.includes('구독'); })()"
},
{
"id": 5,
"name": "결제 정보 확인",
"action": "verify_elements",
"checks": [
"결제 방법 표시",
"다음 결제일 표시",
"결제 금액 표시"
],
"expected": "결제 정보 표시"
"name": "구독 기간/날짜 정보 확인",
"action": "evaluate",
"script": "(() => { const text = document.body.innerText; return text.includes('기간') || text.includes('시작') || text.includes('종료') || /\\d{4}[-./]\\d{2}[-./]\\d{2}/.test(text); })()"
},
{
"id": 6,
"name": "플랜 비교 확인",
"action": "verify_elements",
"checks": [
"플랜 비교 테이블 또는 카드"
],
"expected": "플랜 비교 가능"
"name": "결제 관련 정보 표시 확인",
"action": "evaluate",
"script": "(() => { const text = document.body.innerText; return text.includes('결제') || text.includes('카드') || text.includes('금액') || text.includes('원'); })()"
},
{
"id": 7,
"name": "플랜 변경 버튼 확인",
"action": "verify_elements",
"checks": [
"플랜 변경 또는 업그레이드 버튼"
],
"expected": "플랜 변경 버튼 표시"
"name": "플랜 비교/변경 UI 확인",
"action": "verify_element",
"target": "table, [class*='plan'], [class*='compare'], button:has-text('플랜'), button:has-text('변경'), button:has-text('업그레이드')"
},
{
"id": 8,
"name": "사용량 현황 확인",
"action": "verify_elements",
"checks": [
"사용자 수 현황",
"저장 용량 현황",
"기능 사용 현황"
],
"expected": "사용량 현황 표시"
"name": "사용량 현황 영역 확인",
"action": "evaluate",
"script": "(() => { const text = document.body.innerText; return text.includes('사용') || text.includes('용량') || text.includes('사용자') || text.includes('%'); })()"
},
{
"id": 9,
"name": "결제 내역 확인",
"action": "verify_elements",
"checks": [
"결제 내역 테이블 또는 리스트"
],
"expected": "결제 내역 표시"
"name": "결제 내역 영역 확인",
"action": "verify_element",
"target": "table tbody tr, [class*='history'], [class*='payment-list'], [class*='billing-history']"
},
{
"id": 10,
"name": "영수증 다운로드 확인",
"action": "verify_elements",
"checks": [
"영수증 다운로드 버튼 존재"
],
"expected": "영수증 다운로드 기능 표시"
"name": "다운로드/영수증 버튼 확인",
"action": "verify_element",
"target": "button:has-text('다운로드'), button:has-text('영수증'), button:has-text('Download'), a:has-text('영수증'), [class*='download']"
},
{
"id": 11,
"name": "결제 수단 변경 확인",
"action": "verify_elements",
"checks": [
"결제 수단 변경 버튼 존재"
],
"expected": "결제 수단 변경 기능 표시"
"name": "결제 수단 관련 UI 확인",
"action": "evaluate",
"script": "(() => { const text = document.body.innerText; return text.includes('결제 수단') || text.includes('카드') || text.includes('계좌') || document.querySelector('[class*=\"payment-method\"], [class*=\"card-info\"]'); })()"
},
{
"id": 12,
"name": "구독 취소 버튼 확인",
"action": "verify_elements",
"checks": [
"구독 취소 또는 해지 버튼 존재"
],
"expected": "구독 취소 기능 표시"
"name": "구독 관리 버튼 확인 (취소/해지 포함)",
"action": "verify_element",
"target": "button:has-text('취소'), button:has-text('해지'), button:has-text('관리'), button:has-text('변경'), [class*='cancel'], [class*='manage']"
}
],
"expectedAPIs": [
@@ -145,21 +118,6 @@
"method": "GET",
"endpoint": "/api/v1/subscription",
"description": "구독 정보 조회"
},
{
"method": "GET",
"endpoint": "/api/v1/subscription/plans",
"description": "플랜 목록 조회"
},
{
"method": "GET",
"endpoint": "/api/v1/subscription/payments",
"description": "결제 내역 조회"
},
{
"method": "GET",
"endpoint": "/api/v1/subscription/usage",
"description": "사용량 현황 조회"
}
],
"requiredVerifications": [