Loading...
Loading...
E2E 단위 시나리오를 조합한 통합 테스트 시나리오를 md로 생성·관리·실행하는 스킬. "통합 시나리오", "e2e suite", "통합 테스트", "시나리오 조합", "e2e 통합", "전체 흐름 테스트" 키워드로 트리거.
npx skill4agent add peachsolution/peach-harness peach-e2e-suite| 모드 | 트리거 | 동작 |
|---|---|---|
| | 생성 + 실행 |
| | 통합 시나리오 md 생성만 |
| | 기존 md를 읽어 실행 |
docs/e2e-suite/
└── {업무흐름}-{핵심동작}.md
예: 재처방-결제-검증.md
신규주문-전체흐름.md
회원가입-로그인-검증.mdcd e2e && ./e2e.sh setup
cd e2e && ./e2e.sh statusstatus❌ Chrome CDP 미연결cd e2e && ./e2e.sh chrome &sleep 4cd e2e && ./e2e.sh statuscd e2e && ./e2e.sh chromeGoogle/OAuth/관리자/결제/기존 Chrome Beta 프로필 세션 유지가 핵심인 통합 흐름은 md 생성/분석까지만 진행하고, 실제 Step 실행은 사용자 승인 후 시작한다.
탭 드리프트 방지: 탭 번호 응답 후직후agent-browser tab N로 재검증한다. 예상과 다르면agent-browser eval "document.title + ' | ' + location.href"재출력 후 재선택../e2e.sh status
파일 업로드 Step 포함 시: OS 네이티브 파일 다이얼로그 차단을 위해방식을 사용한다. (상세:Page.setInterceptFileChooserDialog)peach-e2e-browse/references/SPA-프레임워크-입력패턴.md §3
cd e2e && ./e2e.sh list
ls e2e/시나리오/**/*.jsreferences/suite-템플릿.mddocs/e2e-suite/{이름}.mdls docs/e2e-suite/*.mdcd e2e && ./e2e.sh run --tab N 시나리오/경로E2E_ORDER_ID=xxx| 상황 | 처리 |
|---|---|
| 단위 시나리오 실행 실패 | 자동수정 루프 3회 시도 (peach-e2e-scenario 패턴) |
| 자동수정 3회 실패 | 해당 Step에서 중단, 실패 보고 |
| 검증 포인트 불일치 | 기대값과 실제값을 보고, 사용자 판단 요청 |
| 코드/DB 검증 실패 | 불일치 내용 보고, 사용자 판단 요청 |
Step 실패 시 후속 Step은 실행하지 않는다 (데이터 의존성 때문).
node# Step 1에서 orderId 추출
agent-browser eval "location.pathname.split('/').pop()"
# → orderId = "12345"
# Step 2에 주입
cd e2e && E2E_ORDER_ID=12345 ./e2e.sh run --tab 0 시나리오/2-결제.js단위 시나리오 .js 코드에서로 접근 가능. connect.js의process.env.E2E_ORDER_ID처럼 환경변수 기반 주입이 기존 패턴과 일관된다.origin
references/suite-템플릿.md---
name: 재처방-결제-검증
module: tang
created: 2026-04-14
---# {통합 시나리오 이름}
## 사전조건
- Chrome Beta CDP 연결, 로그인 완료
- {필요한 데이터/상태}
- 탭: {시작 페이지}
## 시나리오 흐름
### Step 1: {단계명}
- 실행: `시나리오/{경로}.js`
- 검증:
- {DOM/URL 검증 포인트}
- 전달 데이터: `{변수명}` ({추출 방법})
### Step 2: {단계명}
- 실행: `시나리오/{경로}.js`
- 사전 주입: `E2E_{변수명}=${값}`
- 검증:
- {검증 포인트}
### Step N: 결과 검증
- 실행: 없음 (AI가 직접 확인)
- DB 검증: `{SQL}` → {기대값}
- 코드 검증: `{파일경로}` — {확인할 로직}
## 최종 통합 기준
- {전체 통과 조건}
## 실행 이력
| 일시 | 결과 | 비고 |
|------|------|------|e2e.sh runnode| 용도 | 도구 |
|---|---|
| 단위 시나리오 실행 | |
| 검증 포인트 확인 | |
| 코드 검증 | Read, Grep |
| DB 검증 | peach-db-query 또는 직접 SQL |
| iframe 검증 | |
| 문서 | 용도 | 로드 조건 |
|---|---|---|
| md 생성 템플릿 | create, auto |
통합 시나리오가 완료되었습니다.
📄 파일: docs/e2e-suite/{이름}.md
**관련 스킬:**
- `/peach-e2e-scenario` — 단위 시나리오 생성/실행/자동수정
- `/peach-e2e-browse` — DOM 탐색/디버깅
- `/peach-e2e-suite run {파일명}` — 이 통합 시나리오 재실행