skills/react/react-testing/SKILL.md
Test React components with RTL and Jest/Vitest. Use when writing React component tests with React Testing Library, Jest, or Vitest.
npx skillsauth add hoangnguyen0403/agent-skills-standard react-testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
getByRole / findByRole to test accessibility. Use data-testid only as fallback for complex UI.userEvent (async) instead of fireEvent to better simulate browser events (e.g., await user.click(element)).await screen.findBy* for elements that appear later. Use waitFor(() => ...) for complex non-element updates.state or props. Ensure 100% of P0 flows covered.framer-motion, react-router) or heavy assets to speed up tests.jest-axe.component.state.findBy, avoid waitFor if possible.See references/REFERENCE.md for MSW API mocking, Context testing, form testing, and React Router patterns.
test('submits form', async () => {
const user = userEvent.setup();
render(<LoginForm />);
await user.type(screen.getByLabelText(/email/i), '[email protected]');
await user.click(screen.getByRole('button', { name: /login/i }));
expect(await screen.findByText(/welcome/i)).toBeInTheDocument();
});
testing
Infer the requesting operator's technical fluency from message content (never ask directly) and adapt register — business, hybrid, or technical — across SDLC workflow output. Use when starting sdlc, brainstorm-feature, plan-feature, verify-work, publish-notes, or session-report, or whenever a request's phrasing signals a non-technical or cross-stack operator.
documentation
Define transaction boundaries, locking, and consistency guarantees for multi-step writes. Use when designing atomic operations, retries, idempotency, or concurrent write behavior.
development
Design relational or document schemas from access patterns, cardinality, and lifecycle. Use when modeling entities, choosing embed vs normalize, or shaping schema boundaries before implementation.
data-ai
Diagnose database latency with explain plans, index ownership, and query-shape review. Use when a query is slow, an index is missing, or scans and N+1 patterns appear.