테스트 케이스 설계 규칙: 중복 방지, 경계 조건, Given/When/Then 작성, assertion 품질. Use when: 테스트 케이스 작성, test case design, 테스트 설계, Given/When/Then 작성, 테스트 코드 리뷰 시 중복 케이스 판단.
From tddnpx claudepluginhub seonghyeonkimm/my-claude-code-config --plugin tddThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Details PluginEval's skill quality evaluation: 3 layers (static, LLM judge), 10 dimensions, rubrics, formulas, anti-patterns, badges. Use to interpret scores, improve triggering, calibrate thresholds.
각 케이스가 고유한 경계 조건이나 행위를 검증하는지 확인한다. 동일한 코드 경로를 통과하는 케이스가 여러 개면 대표 1개만 남긴다.
Math.ceil(value / 100) * 100 올림 함수의 경우:
1 → 100과 99 → 100은 동일 경계(0 < x < 100). 하나만 유지101 → 200과 15432 → 15500은 동일 경계(100의 배수가 아닌 값). 하나만 유지0 → 0 (항등), 99 → 100 (올림), 100 → 100 (경계 정확히), 15432 → 15500 (일반), -50 → 0 (음수)각 assertion은 테스트 대상의 출력/상태/부수효과를 직접 검증해야 한다:
expect(true).toBe(false), expect(1).toBe(2) 등 placeholderTODO, FIXME 주석으로 assertion 대체expect(result.error).toBeDefined(), expect(onSubmit).toHaveBeenCalledWith(...)test 1, test 2, should work, renders, 렌더링한다광고가 없을 때 클릭하면 onCreateAd가 호출된다describe/it/test 설명은 한국어로 작성 (프로젝트 컨벤션에 따름)it('RecommendCreateAd를 렌더링한다')it('광고가 없을 때 클릭하면 onCreateAd가 호출된다')외부 API, 타이머 등 제어 불가능한 의존성만 mock: