> react-native-testing

Jest and React Native Testing Library for component and integration tests. Use when writing Jest or React Native Testing Library tests for React Native components. (triggers: **/*.test.tsx, **/*.spec.tsx, __tests__/**, test, testing, jest, render, fireEvent, waitFor)

fetch
$curl "https://skillshub.wtf/HoangNguyen0403/agent-skills-standard/react-native-testing?format=md"
SKILL.mdreact-native-testing

React Native Testing

Priority: P1 (OPERATIONAL)

Setup

  • Jest: Pre-configured in React Native.
  • Testing Library: Use @testing-library/react-native for user-centric tests.
  • Mocking: Use jest.mock() for native modules.

Component Testing

import { render, fireEvent, waitFor } from '@testing-library/react-native';

test('increments counter on button press', () => {
  const { getByText, getByRole } = render(<Counter />);
  const button = getByRole('button', { name: /increment/i });

  fireEvent.press(button);

  expect(getByText('Count: 1')).toBeTruthy();
});

Async Testing

test('fetches and displays data', async () => {
  const { findByText } = render(<DataComponent />);
  const element = await findByText(/loaded data/i);
  expect(element).toBeTruthy();
});

Best Practices

  • User-Centric: Use getByRole, getByText over testID when possible.
  • Integration > Unit: Test features, not implementation.
  • Avoid Snapshots: Use sparingly. Brittle and hard to review.
  • Coverage: Aim for 70%+. Focus on critical paths.

Anti-Patterns

  • No Testing Implementation: Test behavior, not internals.
  • No testID Overuse: Prefer accessible queries.

Reference & Examples

See references/testing-library.md for RNTL Setup, Mocking Providers, and Integration Flow examples.

Related Topics

common/quality-assurance | react/testing

┌ stats

installs/wk0
░░░░░░░░░░
github stars341
██████████
first seenMar 17, 2026
└────────────

┌ repo

HoangNguyen0403/agent-skills-standard
by HoangNguyen0403
└────────────

┌ tags

└────────────