스킬 javascript-testing-patterns
📦

javascript-testing-patterns

안전 🌐 네트워크 접근⚙️ 외부 명령어📁 파일 시스템 액세스🔑 환경 변수

Jest 및 Vitest로 JavaScript 테스트 작성

JavaScript 및 TypeScript 애플리케이션에 대한 신뢰할 수 있는 테스트를 작성하는 것은 시간이 많이 들고 오류가 발생하기 쉽습니다. 이 기술은 모킹, 픽스처, TDD 워크플로와 함께 단위 테스트, 통합 테스트 및 컴포넌트 테스트에 즉시 사용 가능한 테스트 패턴을 제공합니다.

지원: Claude Codex Code(CC)
⚠️ 68 나쁨
1

스킬 ZIP 다운로드

2

Claude에서 업로드

설정 → 기능 → 스킬 → 스킬 업로드로 이동

3

토글을 켜고 사용 시작

테스트해 보기

"javascript-testing-patterns" 사용 중입니다. 사용자를 생성, 업데이트, 삭제하는 사용자 서비스에 대한 테스트 작성

예상 결과:

  • CRUD 작업이 포함된 UserService 생성
  • create() 메서드 테스트 - 성공 케이스 및 중복 사용자 오류
  • update() 메서드 테스트 - 성공 케이스 및 사용자를 찾을 수 없음 오류
  • delete() 메서드 테스트 - 성공적인 삭제 및 존재하지 않는 사용자
  • 테스트 간 서비스 상태 재설정을 위해 beforeEach 사용
  • 모든 엣지 케이스에 대한 포괄적인 어설션 추가

"javascript-testing-patterns" 사용 중입니다. 외부 엔드포인트에서 데이터를 가져오는 API 서비스에 대한 테스트 생성

예상 결과:

  • fetchUser 및 createUser 메서드가 포함된 ApiService 설정
  • 격리된 테스트를 위해 vi.fn()으로 global.fetch 모킹
  • 모ック 응답으로 성공적인 사용자 가져오기 테스트
  • 실패한 API 호출에 대한 오류 처리 테스트
  • 올바른 HTTP 메서드 및 요청 본문 확인

"javascript-testing-patterns" 사용 중입니다. 사용자 입력 및 제출이 포함된 React 컴포넌트 테스트 작성

예상 결과:

  • Testing Library로 UserForm 컴포넌트 렌더링
  • 입력 필드 렌더링 및 상태 업데이트 테스트
  • 올바른 데이터로 onSubmit 콜백이 실행되는지 확인
  • 사용자 상호작용 시뮬레이션을 위해 fireEvent 사용
  • 안정적인 요소 선택을 위한 testid 속성 추가

보안 감사

안전
v4 • 1/17/2026

This is a documentation-only skill containing testing pattern examples. The static analyzer flagged 153 patterns, but ALL are FALSE POSITIVEs: weak crypto alerts are triggered by test fixture strings (hashed_password), backtick alerts are TypeScript template literals, path traversal alerts are relative import paths in test code, and the critical heuristic is an invalid combination of benign testing patterns. The previous audit correctly classified this as SAFE.

2
스캔된 파일
1,204
분석된 줄 수
4
발견 사항
4
총 감사 수

위험 요인

🌐 네트워크 접근 (33)
⚙️ 외부 명령어 (43)
📁 파일 시스템 액세스 (9)
🔑 환경 변수 (8)
감사자: claude 감사 이력 보기 →

품질 점수

38
아키텍처
100
유지보수성
85
콘텐츠
20
커뮤니티
100
보안
78
사양 준수

만들 수 있는 것

React 컴포넌트 테스트

UI 동작 및 사용자 상호작용을 확인하기 위해 React Testing Library로 컴포넌트 테스트를 작성합니다.

API 엔드포인트 테스트

데이터베이스 픽스처 및 인증 흐름과 함께 REST API에 대한 통합 테스트를 생성합니다.

TDD 워크플로 구현

높은 커버리지로 신뢰할 수 있는 함수와 서비스를 구축하기 위해 테스트 중심 개발 패턴을 따릅니다.

이 프롬프트를 사용해 보세요

기본 단위 테스트
정상적인 경우, 엣지 케이스 및 오류 조건을 포함하여 이 함수에 대한 단위 테스트를 작성합니다.
API 호출 모킹
vi.mock 또는 jest.mock을 사용하여 외부 API 호출을 모킹하는 이 서비스에 대한 테스트를 생성합니다.
컴포넌트 테스트
사용자 상호작용 및 렌더링을 테스트하는 @testing-library/react를 사용한 컴포넌트 테스트를 작성합니다.
통합 테스트
인증 및 데이터베이스 정리를 포함하여 이 REST API 엔드포인트에 대한 통합 테스트를 생성합니다.

모범 사례

  • AAA 패턴 사용: 입력 구성, 함수 실행, 예상 결과 어설션
  • 테스트를 빠르고 실제 서비스에서 격리하기 위해 외부 종속성 모킹
  • 리팩터링에 복원력 있는 테스트를 위해 구현 세부 사항이 아닌 동작 테스트

피하기

  • 자주 변경되는 구현 세부 사항 테스트 피하기
  • 실행 순서나 공유 상태에 의존하는 테스트 작성 금지
  • 단위 테스트에서 느린 외부 서비스 모킹 건너뛰기 금지

자주 묻는 질문

어떤 테스트 프레임워크를 사용해야 합니까?
Vite 프로젝트에는 Vitest를 권장합니다. Jest는 모든 프로젝트에서 잘 작동하며 가장 큰 생태계를 가지고 있습니다.
어떤 커버리지 비율을 목표로 해야 합니까?
핵심 코드에 대해 80% 이상의 커버리를 목표로 하세요. 숫자만 늘리는 것이 아닌 의미 있는 테스트에 집중하세요.
비동기 코드를 어떻게 테스트합니까?
async/await과 expect().resolves 또는 expect().rejects를 사용하세요. 테스트 간에 vi.clearAllMocks()로 모크를 지웁니다.
내 테스트 데이터가 안전한가요?
이 기술은 테스트 코드 패턴만 생성합니다. 사용자 데이터에 접근, 저장 또는 전송하지 않습니다.
테스트가 간헐적으로 실패하는 이유는 무엇입니까?
테스트 간 공유 상태를 확인하세요. 설정을 위해 beforeEach를 사용하고 모크가 지워졌는지 확인하세요. 테스트 순서 종속성을 피하세요.
Jest와 어떻게 다릅니까?
Vitest는 Jest와 동일한 API를 사용하지만 Vite에서 더 빠르게 실행됩니다. 구성은 유사하지만 Vite의 구성 형식을 사용합니다.

개발자 세부 정보

파일 구조

📄 SKILL.md