testing-patterns
더 나은 Jest 테스트 작성하기
또한 다음에서 사용할 수 있습니다: 0xDarkMatter,0xDarkMatter,ChrisWiles,CleanExpo
이 스킬은 즉시 사용 가능한 Jest 테스트 패턴을 제공합니다. 팩토리 함수, 커스텀 렌더 유틸리티, 모킹 전략을 포함하며, 개발자가 TDD 원칙에 따라 유지 관리 가능하고 DRY 테스트를 작성할 수 있도록 도와줍니다.
스킬 ZIP 다운로드
Claude에서 업로드
설정 → 기능 → 스킬 → 스킬 업로드로 이동
토글을 켜고 사용 시작
테스트해 보기
"testing-patterns" 사용 중입니다. Create a factory function for user data
예상 결과:
```typescript
interface User {
id: string;
name: string;
email: string;
role: 'admin' | 'user';
}
const getMockUser = (overrides?: Partial<User>): User => ({
id: '123',
name: 'John Doe',
email: 'john@example.com',
role: 'user',
...overrides,
});
```
"testing-patterns" 사용 중입니다. Show me a custom render function
예상 결과:
```typescript
export const renderWithTheme = (ui: React.ReactElement) => {
return render(
<ThemeProvider>{ui}</ThemeProvider>
);
};
```
"testing-patterns" 사용 중입니다. How should I structure my tests?
예상 결과:
Use describe blocks to group related tests: describe('ComponentName', () => { describe('Rendering', () => {...}); describe('User interactions', () => {...}); describe('Edge cases', () => {...}); });
보안 감사
안전Security review completed. All 42 static findings are false positives triggered by the static analyzer misinterpreting: (1) markdown code formatting backticks as shell commands, (2) TypeScript generics like Partial<X> as cryptographic patterns, and (3) the word 'APIs' as network reconnaissance. The skill is legitimate Jest testing documentation with no security concerns.
품질 점수
만들 수 있는 것
테스트 인프라 설정
ThemeProvider와 같은 필요한 providers로 컴포넌트를 래핑하는 커스텀 렌더 함수와 팩토리 유틸리티를 생성하여 모든 테스트의 보일러플레이트를 줄입니다.
유지 관리 가능한 단위 테스트 작성
팩토리 함수를 사용하여 일관된 테스트 데이터를 생성하여 테스트를 더 읽기 쉽고 유지 관리하기 쉽게 만들고 데이터 구조가 변경될 때 업데이트합니다.
TDD 방법론 적용
먼저 실패하는 테스트를 작성한 다음 통과하기 위한 최소한의 코드를 구현하여 red-green-refactor 사이클을 적용하고 테스트가 개발을 주도하도록 합니다.
이 프롬프트를 사용해 보세요
React 컴포넌트의 기본 테스트 파일을 설정하는 것을 도와주세요. ThemeProvider로 컴포넌트를 래핑하는 커스텀 렌더 함수를 만드는 방법을 보여주세요.
id, name, email, role에 대한 기본값을 가진 사용자 객체를 반환하는 getMockUser라는 팩토리 함수를 생성하세요. Partial 타입을 사용하여 특정 속성을 재정의하는 방법을 보여주세요.
Jest에서 'utils/analytics' 같은 모듈을 모킹하는 방법을 보여주세요. 테스트에서 mock에 액세스하는 방법과 모의 반환 값을 모킹하는 방법을 포함하세요.
새 기능을 추가하기 위한 TDD 워크플로우를 안내해 주세요. 먼저 실패하는 테스트를 작성한 다음 통과하기 위한 최소한의 구현을 보여주세요.
모범 사례
- 테스트를 DRY하고 일관되게 유지하려면 항상 props와 데이터에 팩토리 함수를 사용하세요
- 구현 세부 정보가 아닌 공용 API를 통해 동작을 테스트하세요
- 어떤 동작이 테스트되고 있는지 설명하는 설명적인 테스트 이름을 사용하세요
피하기
- 실제 컴포넌트 동작 대신 모킹 동작 테스트 피하기
- 테스트 간 테스트 데이터 복제 피하기 - 대신 팩토리 함수 사용하세요
- 리팩토링 시 변경될 수 있는 구현 세부 정보 테스트 피하기