
component-testing
Enforces project React component testing conventions using Testing Library with proper rendering, us
提供方 JasonPaff|开源
Component Testing Skill
Purpose
This skill provides React component testing conventions using Testing Library. Component tests verify rendering, user interactions, and accessibility of React components.
Activation
This skill activates when:
- Creating or modifying files in
tests/components/ - Testing React components (
.tsxfiles) - Working with Testing Library
- Testing user interactions with
userEvent
File Patterns
tests/components/**/*.test.tsx
Workflow
- Detect component test work (file path contains
tests/components/) - Load
references/Component-Testing-Conventions.md - Also load
testing-baseskill for shared conventions - Apply component test patterns with Testing Library
- Ensure accessibility-first query usage
Key Patterns (REQUIRED)
Custom Render
- ALWAYS use
customRenderfromtests/setup/test-utils.tsx - Returns
{ user, ...renderResult }with pre-configured userEvent - Includes all providers (theme, clerk, etc.)
Testing Library Queries
- Prefer
getByRolefor accessibility - Use
getByTestIdwith namespace pattern (ui-, feature-, form-*) - Use
getByText,getByLabelTextfor content - Use
queryBy*for assertions on missing elements
User Interactions
- Use
userfrom customRender return (pre-configured userEvent) - Always
awaituser interactions - Test real user behaviors, not implementation details
Pre-Mocked Dependencies
- Clerk, Next.js navigation, sonner, next-themes are pre-mocked
- Mock server actions with
vi.mock()
References
references/Component-Testing-Conventions.md- Complete component testing conventions