피드로 돌아가기
We stopped leaving GitHub to debug test failures. Here's how.
Dev.toDev.to
DevOps

GitHub PR 내 LLM 기반 분석으로 테스트 디버깅 컨텍스트 스위칭 제거

We stopped leaving GitHub to debug test failures. Here's how.

Tomer Lihovetsky2026년 5월 1일7intermediate

Context

CI 실패 분석을 위해 로그 확인, Trace Viewer 탐색, Slack 이력 조회 등 여러 도구를 오가는 과도한 Context Switching 발생. 개별 테스트 결과만으로는 이전 실행 이력과의 비교 분석이 불가능하여 시스템적 회귀 여부를 판단하는 데 한계가 존재함.

Technical Solution

  • JUnit XML 결과물을 기반으로 PR 댓글에서 직접 상호작용하는 LLM Agent 아키텍처 설계
  • 다중 프레임워크(Playwright, Selenium, WebdriverIO) 통합 분석을 통한 프레임워크별 맞춤형 코드 수정 제안 로직 구현
  • 과거 PR 실행 이력의 메타데이터를 저장하고 비교 분석하여 실패 패턴의 증가율을 계산하는 History-aware 분석 엔진 도입
  • 실패 원인을 UI_CHANGED, TIMING_FLAKE 등으로 분류하고 신뢰도 점수(Confidence Score)를 산출하는 분류 체계 적용
  • 고신뢰도 실패 건에 대해 분석 요청 전 자동으로 Inline Code Fix를 생성하여 PR에 직접 게시하는 Proactive 피드백 루프 구축

Impact

  • 18개의 테스트 실패 건 중 약 80%를 해결하는 핵심 수정 사항을 단일 질문으로 도출
  • 이전 PR 대비 실패 패턴 발생 빈도 3배 증가(7회 -> 20회)를 식별하여 시스템적 회귀 조기 발견

- CI/CD 파이프라인의 피드백 루프를 개발자가 머무는 인터페이스(PR) 내부로 통합하여 인지 부하 최소화 - 단순 에러 메시지 출력을 넘어 과거 데이터와의 비교를 통한 '신호(Signal)'와 '소음(Noise)'의 구분 체계 마련 - LLM 도입 시 단일 해결책이 아닌 사용 중인 기술 스택(Framework)에 최적화된 다중 코드 생성 전략 검토

원문 읽기