콘텐츠로 이동

실행하고 보고서 읽기

테스트가 만들어졌으면 이제 돌려서 본인 앱이 설명대로 동작하는지 봅니다. 이 단계는 /run-suite 스킬이 맡습니다. 결과를 복잡한 로그 대신 흐름 언어로 다시 묶어 보여 주는 게 이 스킬의 핵심입니다.

Claude Code 프롬프트에 다음을 입력합니다.

테스트 돌려줘

또는 /run-suite. 트랙을 여러 개 쓴다면 /run-suite web처럼 한 트랙만 지정할 수도 있습니다.

스킬이 먼저 e2e-suite-config.json을 보고 어느 트랙을 돌릴지 정한 다음, 그 트랙의 테스트를 실행합니다. web이면 Playwright가, mobile이면 Maestro가 실제로 브라우저나 시뮬레이터를 띄워 흐름을 한 단계씩 밟습니다.

돌릴 게 없다고 나오면: “먼저 /4-design-suite” 또는 “/5-implement-suite” 안내가 뜨면 아직 설계나 구현이 안 끝난 상태입니다. 첫 테스트 한 개로 돌아가 그 단계를 먼저 마칩니다.

2) 보고서는 흐름 언어로 옵니다

섹션 제목: “2) 보고서는 흐름 언어로 옵니다”

테스트 도구의 raw 출력은 줄이 많고 읽기 어렵습니다. /run-suite는 그걸 본인에게 그대로 던지지 않고, 무엇을 테스트할지 정하기에서 적은 흐름 단위로 다시 묶어 줍니다.

통과한 흐름은 한 줄로 짧게, 실패한 흐름만 자세히 보여 줍니다. 모양은 다음과 비슷합니다.

## 동작 검증 결과 — web
✓ 비로그인 방문자가 가격 페이지에서 Pro 결제 → 대시보드 진입
✓ 로그인 사용자가 설정에서 프로필 수정
✗ 로그인 사용자가 결제 관리(Customer Portal) 이동
- 위치: tests/web/specs/billing.spec.ts:42
- 메시지: customer-portal 호출이 401
- 추정 원인: Authorization 헤더 누락 또는 세션 만료
- 다음: implement-web-suite 재호출 — 세션 추출 부분 검토

체크 표시가 붙은 줄은 그 흐름이 본인이 의도한 대로 동작했다는 뜻입니다. 엑스 표시가 붙은 줄은 실패한 흐름이고, 그 아래에 네 가지가 따라옵니다.

  • 위치: 어느 테스트 파일의 몇 번째 줄에서 멈췄는지
  • 메시지: 무엇이 어긋났는지
  • 추정 원인: AI가 짐작한 이유
  • 다음: 다음에 무엇을 부르면 되는지

이 네 줄 덕분에 본인이 로그를 해석하지 않아도 다음 한 걸음이 보입니다. 실패가 보이면 보통 “다음” 줄에 적힌 스킬을 부르면 됩니다.

세 가지 결과를 구분해 두면 좋습니다.

전부 통과: 본인 앱이 의도한 흐름대로 동작한다는 뜻입니다. 이 자리에 도달하면 첫 테스트가 안전망으로 살아 있는 것입니다.

실패: 흐름 중 어딘가가 의도와 다릅니다. 둘 중 하나입니다. 본인 앱에 진짜 버그가 있거나, 테스트가 화면을 잘못 짚고 있거나입니다. 보고서의 “추정 원인”이 어느 쪽인지 짚어 줍니다. 테스트가 잘못 짚은 거라면 “다음” 줄의 implement-* 스킬을 다시 불러 고치고, 진짜 버그라면 본인 앱 쪽을 손봐야 합니다.

flaky: 같은 테스트가 돌릴 때마다 통과했다 실패했다 합니다. 보고서는 이걸 따로 표시합니다. flaky는 보통 테스트가 화면이 다 뜨기 전에 다음 동작을 해 버려서 생깁니다. 이 자리는 안정성 문제라 /review-e2e로 넘어가 점검합니다. 자세한 증상은 트러블슈팅의 flaky 항목에 있습니다.

화면 요약으로 부족하고 진짜 raw 출력이 보고 싶다면 .claude/state/last-run.log에 통째로 저장돼 있습니다. 마지막 실행의 전체 출력이 거기 들어갑니다. 보통은 열어 볼 일이 없지만, AI에게 “last-run.log 보고 이 실패 원인 더 자세히 봐 줘”라고 시킬 때 쓰입니다.

전체 보고서는 .claude/state/run-{날짜}.md에도 한 부씩 남습니다. 실행할 때마다 새 파일이 생기니 지난 실행과 비교할 수 있습니다.

5) 프로덕션이면 실행 자체를 거부합니다

섹션 제목: “5) 프로덕션이면 실행 자체를 거부합니다”

테스트가 붙으려는 주소나 디바이스가 프로덕션이면 /run-suite는 실행을 거부합니다. 실수로 운영 환경에 테스트를 돌리는 자리를 막아 주는 안전선입니다. 이 거부가 떴다면 무엇을 테스트할지 정하기로 돌아가 환경을 로컬이나 스테이징으로 바꿔야 합니다.

첫 흐름이 통과하는 걸 봤다면, base가 뒤에서 알아서 돌리는 안전망이 무엇인지 한 번 알아 두면 좋습니다. 자동으로 챙겨주는 안전망으로 갑니다.