클로드스킬마트스킬 둘러보기바로 쓰는 문장영상으로 배우기터미널 사용법스킬이 뭐예요?
목록으로

Absolute Deflake — 불안정 테스트 근본 해결

무작위로 실패하는 flaky 테스트를 반복·셔플·병렬 실행으로 실증 탐지하고, 원인을 진단해 재시도 없이 근본 수정한다.

개발·코딩중급20829AI 점수 9/10마지막 업데이트: 2026. 7. 6.

무엇을 해주나

  • 테스트 스위트를 N회 반복 실행하고 순서를 섞어(shuffle), 병렬/단독 실행을 비교해 테스트별 실패율을 실증적으로 측정합니다.
  • 실패 원인을 7가지 대표 패턴(테스트 순서·공유 상태, 시간/시계, async 경합, 난수 시드, 네트워크 I/O, 정렬되지 않은 컬렉션, 리소스 누수)으로 진단합니다.
  • retry / skip / sleep / 타임아웃 늘리기 같은 눈속임 수정을 금지하고, 원인 제거 후 다시 N회 무작위 실행으로 검증합니다.
  • 위험도 1~3단계로 분류해, 테스트가 아니라 실제 제품 코드의 레이스 컨디션인 경우 별도로 표시해 줍니다.

이런 분께 추천

  • CI가 간헐적으로 빨간불이 되어 배포 신뢰도가 떨어진 팀
  • @flaky, retry(3), skip 주석이 쌓여 있는 레거시 테스트 스위트를 정리하려는 개발자
  • Jest/Vitest, pytest, Go test 환경에서 "로컬은 통과, CI는 실패"를 겪는 사람

활용 예시

  1. "absolute deflake"를 실행해 결제 테스트 스위트를 20회 셔플 실행 → 특정 테스트의 실패율 35% 확인 후 공유 DB 픽스처 초기화 누락을 수정.
  2. "이 테스트가 CI에서만 랜덤하게 실패해"라고 요청 → 실제 시계 의존 코드를 가짜 타이머로 교체하고 sleep을 조건 대기로 변경.
  3. Go 프로젝트에서 go test -count=50 -shuffle=on -race ./...로 검증해 포트 재사용 문제를 유니크 포트 할당으로 해결.

· · · 설치 가이드 · · ·

설치 없이 지금 한 번 써보기

아래를 Claude에 붙여넣으면 설치하지 않고도 이 스킬을 그대로 씁니다.

이 파일의 지시를 읽고 그대로 따라서 나를 도와줘:
https://raw.githubusercontent.com/maddhruv/absolute/HEAD/skills/absolute-deflake/SKILL.md

내가 원하는 것: (여기에 하고 싶은 일을 쓰세요)

Claude가 링크를 열지 못하면, 링크를 직접 열어 내용을 복사해 붙여넣으세요.

쓸 만하면 아래에서 ZIP을 받아 설치하세요. 그러면 매번 붙여넣지 않아도 알아서 작동합니다.

Claude 앱에 설치 (터미널 필요 없음)
  1. 아래 버튼으로 ZIP 파일을 받으세요.
  2. Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
  3. Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
ZIP 내려받기
Claude Code에 설치

Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 maddhruv/absolute 의 skills/absolute-deflake 폴더를 내 ~/.claude/skills/absolute-deflake/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/maddhruv/absolute.git && mkdir -p ~/.claude/skills && cp -r absolute/skills/absolute-deflake ~/.claude/skills/

제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.

placeholder