Community코딩 & 개발github.com

janeblower/test-cost-optimization

불필요한 테스트 실행과 에이전트 컨텍스트 사용을 줄이면서, 필요한 검증은 유지합니다. 코드 변경에 대한 계획, 실행, 개선 시 또는 테스트 보고와 로그 최적화 시 사용하세요.

test-cost-optimization란 무엇인가요?

이 스킬은 AI 코딩 에이전트(예: Claude Code, Cursor)가 소프트웨어 개발 중 테스트 검증 프로세스를 최적화하여 불필요한 작업을 줄이고 비용을 절감하도록 돕습니다. 영향을 받는 구성 요소와 위험에 따라 테스트 실행 순서를 계획하고, 광범위한 스위트를 실행하기 전에 타겟 회귀 테스트로 시작할 것을 권장합니다. 또한 진단 로그를 간결하게 유지하고, 실패 시 바운드된 발췌문을 제공하며, 전체 출력을 중복 없이 보존하는 등 출력을 유용하게 유지하는 규칙을 제공합니다. 통합 테스트나 문서 변경과 같은 다양한 시나리오를 다루며, 스킬 자체에 대한 인프라 검증 없이 기존의 신뢰할 수 있는 도구를 불필요하게 다시 테스트하지 않도록 주의합니다. 전반적으로 이 스킬은 검증 품질을 유지하면서 테스트 실행 시간과 에이전트 컨텍스트 사용을 최적화하여 비용 효율적인 개발을 목표로 합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/janeblower/test-cost-optimization/tree/HEAD

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

비용 인지 테스트 검증

필요한 검사 약화 없이 중복 작업과 출력을 줄입니다. 더 나은 순서 선택은 실행 시간을 절약하고, 간결한 보고는 컨텍스트를 절약하지만 이미 실행 중인 테스트를 빠르게 만들지는 않습니다. 측정 없이 절감을 주장하지 마십시오.

검사 계획 및 실행

  • 비용이 많이 드는 스위트를 실행하기 전에 영향을 받는 구성 요소, 위험, 프로젝트 요구 사항 및 적절한 검사를 식별하십시오. 명시적인 사용자 및 프로젝트 요구 사항을 따르고, 필수 검사를 포함하십시오.
  • 먼저 핵심 변경 사항과 의미 있는 타겟 회귀 테스트를 완료하십시오. 가장 좁은 관련 검사로 빌드 또는 동작 실패를 진단하고 수정하십시오. 그런 다음 영향을 받는 통합 또는 종단 간 시나리오를 안정화하십시오. 새롭거나 변경된 공유 시나리오의 경우 사용 가능한 참조와 기대치를 비교하고, 의도된 차이점은 별도로 확인하고 문서화하십시오.
  • 변경 사항과 타겟 검사가 안정화되면 필요한 최종 스위트, 정적 검사 및 빌드를 적절히 실행하십시오. 관련 코드, 종속성, 구성, 환경 및 시나리오가 변경되지 않은 경우에만 성공한 결과를 재사용하십시오.
  • 수정 후 영향을 받는 검사를 다시 실행하십시오. 영향 범위가 넓거나, 종속성이 변경되거나, 요구 사항이 요구하거나, 정확성이 불확실한 경우 광범위한 스위트를 반복하십시오. 모든 로컬 실패에 대해 전체 스위트를 자동으로 반복하지 마십시오.
  • 간헐적 실패의 경우 첫 번째 실패를 보존하고 테스트만 단독으로 다시 실행하십시오. 필요한 경우 스위트를 직렬로 실행하여 간섭을 조사하십시오. 나중에 통과한 것을 실패가 수정되었다는 증거로 취급하지 말고 해결되지 않은 불안정성을 보고하십시오.
  • 문서 전용 변경의 경우 diff, 관련 링크 및 구문을 확인하고, 필요한 경우 또는 관련된 경우에만 애플리케이션 테스트를 실행하십시오. 성능 측정을 결과를 왜곡할 수 있는 동시 빌드 및 테스트와 분리하여 유지하십시오.
  • 장기 실행 작업은 변경되지 않은 출력을 반복적으로 읽지 말고 합리적인 간격으로 폴링하십시오. 진행 상황을 확인하기 위해 작업을 다시 시작하지 마십시오.

출력을 유용하고 제한적으로 유지

기존의 프로젝트 실행기 또는 프레임워크 보고 기능을 선호하십시오. 전체 stdout 및 stderr를 고유하고 덮어쓰지 않는 로그에 적절히 캡처하고 간결한 요약을 반환하십시오. 명령 결과 및 종료 상태, 지속 시간, 건너뛰거나 무시된 테스트를 포함한 인식 가능한 테스트 수, 로그 위치. 실패 시 실패한 케이스 이름과 제한된 진단 발췌문을 포함하고, 요약이 충분하지 않은 경우 전체 로그의 관련 부분을 검사하십시오. 부분 스위트 수에서 전체 성공을 추론하지 마십시오. 명령의 실제 종료 상태를 사용하고 요약을 파싱할 수 없는 경우 명시하십시오. 시작 오류, 취소 및 신호 동작을 보존하십시오. 기존 실행기 주위에 중복 래퍼를 쌓지 마십시오.

테스트 인프라 검증

테스트 실행기, 래퍼 또는 보고 도구를 만들거나 크게 변경할 때 결과의 신뢰성을 테스트하십시오. 도구가 실제로 수행하는 작업과 실패를 숨기거나 잘못 표현할 위험에 따라 케이스를 선택하십시오. 유용한 케이스는 다음과 같습니다.

  • 성공적인 스위트 후의 이후 실패는 올바른 종료 상태와 함께 여전히 실패로 남아 있어야 합니다.
  • 표시된 진단이 제한된 경우에도 전체 출력이 유지되어야 합니다.
  • 건너뜀, 시작 오류, 인식할 수 없는 요약 및 중단이 해당되는 경우 올바르게 보고되거나 전파되어야 합니다.

관찰 가능한 동작(기본 테스트 프로세스와의 경계 포함)을 실행하십시오. 실제 프레임워크에 맞게 파싱을 조정하고 구현을 단순히 복제하는 테스트는 피하십시오. 이는 인프라의 검증이지 모든 개별 테스트에 대해 테스트를 작성해야 하는 요구 사항이 아닙니다. 이 스킬이 사용된다는 이유만으로 신뢰할 수 있는 기존 도구를 다시 작성하거나 다시 테스트하지 마십시오.

진단 테스트 작성

진행 출력이 유용하지 않은 한 통과 테스트는 조용히 유지하십시오. 실패는 케이스, 예상 및 실제 동작, 관련 매개변수 및 임의 시드를 식별해야 합니다. 대용량 페이로드는 길이, 불일치 위치, 짧은 발췌문 또는 해시로 설명하고 모든 것을 덤프하지 마십시오. 필요한 경우 진단을 위해 반복별 세부 정보 또는 전체 추적을 활성화하십시오. 건너뜀은 이유를 명시적으로 표시하고 실패를 성공적인 종료로 변환하지 마십시오. 작업 중인 노이즈가 많은 기존 테스트를 개선하고, 형식만을 위해 정상적인 스위트를 다시 작성하지 마십시오.

관련 스킬