당신이 클릭하면, AI가 고친다. 테스트 스크립트 작성은 AI에게? 아니, 당신이 직접 앱을 쓰면서 AI가 실시간으로 버그를 고치는 새로운 방식.
Key Point
| 기존 방식 | Zero-Script QA |
|---|---|
| AI가 테스트 코드 작성 → 실행 → 결과 확인 | 사람이 직접 UI 사용 → AI가 로그 감시 → 즉시 수정 |
| 테스트가 놓치는 엣지케이스 발생 | 실제 사용 패턴 그대로 테스트 |
| 테스트 코드 유지보수 비용 | 로그 설정만 있으면 OK |
| AI의 "예상된" 시나리오만 검증 | 인간의 "창의적인" 엣지케이스 발견 |
bashLOG_LEVEL=DEBUG LOG_FORMAT=json
Step 1: AI에게 로그 감시 시작
개발 서버를 띄우고, AI에게 다음 프롬프트를 전달하세요:
로그 모니터링 모드로 전환해줘. docker compose logs -f --tail=0 명령으로 실시간 로그를 감시해. 감시 규칙: - 4xx, 5xx 에러가 발생하면 즉시 알려줘 - 에러 스택트레이스가 보이면 원인 분석해줘 - 내가 "수정해줘"라고 하면 코드를 고치고 서비스 재시작해줘 - 1000ms 이상 느린 응답도 알려줘 나는 이제 브라우저에서 앱을 테스트할게.
Step 2: 사람이 실제 앱을 사용하며 QA
브라우저에서 실제 서비스를 사용하세요.
테스트 시나리오를 "계획"하지 마세요. 실제 사용자처럼 자유롭게 앱을 사용하세요. "이러면 어떻게 되지?" 싶은 건 다 해보세요.
Step 3: AI가 이슈 발견 시 즉시 수정
AI가 로그에서 에러를 발견하면 다음과 같이 보고합니다:
🚨 에러 발견! POST /api/v1/projects 500 Internal Server Error Request ID: req_abc123 Duration: 45ms 원인 분석: - category_id가 null일 때 DB 제약조건 위반 - 파일: services/project/app/api/projects.py:45 - 에러: IntegrityError: NOT NULL constraint failed 수정하시겠습니까?
| 응답 | AI 행동 |
|---|---|
| "수정해줘" / "예" | 코드 수정 → 서비스 재시작 → "다시 테스트해주세요" |
| "원인만 알려줘" | 상세 분석 제공, 수정은 보류 |
| "나중에" / "스킵" | 이슈 기록 후 계속 모니터링 |
✅ 수정 완료 변경 사항: - services/project/app/api/projects.py:45 - category_id null 체크 추가 서비스 재시작 중... 완료! 동일한 동작을 다시 테스트해주세요.
로그 분석 가이드
| 패턴 | 로그 시그널 | 우선순위 |
|---|---|---|
| 서버 에러 | "status": 5xx | 🔴 즉시 |
| 클라이언트 에러 | "status": 4xx | 🟡 확인 필요 |
| 느린 응답 | "duration_ms": >1000 | 🟡 확인 필요 |
| 예외 발생 | "exception":, Traceback | 🔴 즉시 |
| 인증 실패 | AUTH_, 401, 403 | 🟡 확인 필요 |
bash# 특정 요청의 전체 흐름 추적 docker compose logs | grep "req_abc123"
실전 예시
사용자 행동:
AI 로그 감지:
json{ "timestamp": "2025-01-15T10:30:45.123Z", "level": "ERROR", "service": "project-service", "request_id": "req_xyz789", "method": "POST", "path": "/api/v1/projects", "status": 500, "error": { "type": "IntegrityError", "message": "NOT NULL constraint failed: projects.category_id" } }
AI 보고:
🚨 500 에러 발견! POST /api/v1/projects - 카테고리 없이 프로젝트 생성 시 DB 에러 원인: category_id 필수값 검증 누락 위치: services/project/app/api/projects.py 수정 방안: 1. API에서 category_id 필수값 검증 추가 2. 프론트엔드에서 카테고리 선택 필수 처리 어떻게 할까요?
댓글을 작성하려면 로그인이 필요합니다.
당신이 클릭하면, AI가 고친다. 테스트 스크립트 작성은 AI에게? 아니, 당신이 직접 앱을 쓰면서 AI가 실시간으로 버그를 고치는 새로운 방식.
Key Point
| 기존 방식 | Zero-Script QA |
|---|---|
| AI가 테스트 코드 작성 → 실행 → 결과 확인 | 사람이 직접 UI 사용 → AI가 로그 감시 → 즉시 수정 |
| 테스트가 놓치는 엣지케이스 발생 | 실제 사용 패턴 그대로 테스트 |
| 테스트 코드 유지보수 비용 | 로그 설정만 있으면 OK |
| AI의 "예상된" 시나리오만 검증 | 인간의 "창의적인" 엣지케이스 발견 |
bashLOG_LEVEL=DEBUG LOG_FORMAT=json
Step 1: AI에게 로그 감시 시작
개발 서버를 띄우고, AI에게 다음 프롬프트를 전달하세요:
로그 모니터링 모드로 전환해줘. docker compose logs -f --tail=0 명령으로 실시간 로그를 감시해. 감시 규칙: - 4xx, 5xx 에러가 발생하면 즉시 알려줘 - 에러 스택트레이스가 보이면 원인 분석해줘 - 내가 "수정해줘"라고 하면 코드를 고치고 서비스 재시작해줘 - 1000ms 이상 느린 응답도 알려줘 나는 이제 브라우저에서 앱을 테스트할게.
Step 2: 사람이 실제 앱을 사용하며 QA
브라우저에서 실제 서비스를 사용하세요.
테스트 시나리오를 "계획"하지 마세요. 실제 사용자처럼 자유롭게 앱을 사용하세요. "이러면 어떻게 되지?" 싶은 건 다 해보세요.
Step 3: AI가 이슈 발견 시 즉시 수정
AI가 로그에서 에러를 발견하면 다음과 같이 보고합니다:
🚨 에러 발견! POST /api/v1/projects 500 Internal Server Error Request ID: req_abc123 Duration: 45ms 원인 분석: - category_id가 null일 때 DB 제약조건 위반 - 파일: services/project/app/api/projects.py:45 - 에러: IntegrityError: NOT NULL constraint failed 수정하시겠습니까?
| 응답 | AI 행동 |
|---|---|
| "수정해줘" / "예" | 코드 수정 → 서비스 재시작 → "다시 테스트해주세요" |
| "원인만 알려줘" | 상세 분석 제공, 수정은 보류 |
| "나중에" / "스킵" | 이슈 기록 후 계속 모니터링 |
✅ 수정 완료 변경 사항: - services/project/app/api/projects.py:45 - category_id null 체크 추가 서비스 재시작 중... 완료! 동일한 동작을 다시 테스트해주세요.
로그 분석 가이드
| 패턴 | 로그 시그널 | 우선순위 |
|---|---|---|
| 서버 에러 | "status": 5xx | 🔴 즉시 |
| 클라이언트 에러 | "status": 4xx | 🟡 확인 필요 |
| 느린 응답 | "duration_ms": >1000 | 🟡 확인 필요 |
| 예외 발생 | "exception":, Traceback | 🔴 즉시 |
| 인증 실패 | AUTH_, 401, 403 | 🟡 확인 필요 |
bash# 특정 요청의 전체 흐름 추적 docker compose logs | grep "req_abc123"
실전 예시
사용자 행동:
AI 로그 감지:
json{ "timestamp": "2025-01-15T10:30:45.123Z", "level": "ERROR", "service": "project-service", "request_id": "req_xyz789", "method": "POST", "path": "/api/v1/projects", "status": 500, "error": { "type": "IntegrityError", "message": "NOT NULL constraint failed: projects.category_id" } }
AI 보고:
🚨 500 에러 발견! POST /api/v1/projects - 카테고리 없이 프로젝트 생성 시 DB 에러 원인: category_id 필수값 검증 누락 위치: services/project/app/api/projects.py 수정 방안: 1. API에서 category_id 필수값 검증 추가 2. 프론트엔드에서 카테고리 선택 필수 처리 어떻게 할까요?
댓글을 작성하려면 로그인이 필요합니다.