Jest
Delightful JavaScript testing with built-in mocking and assertions.
Quick Start
// sum.test.js
const sum = (a, b) => a + b;
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
When to Use
- Unit and integration tests
- React component testing
- API endpoint testing
- Snapshot testing
Step-by-Step
- Install:
npm install --save-dev jest - Add
"test": "jest"to package.json - Write tests in
*.test.jsfiles - Run:
npm test
Dependencies
npm install --save-dev jest @types/jest ts-jest
Examples
import axios from 'axios';
jest.mock('axios');
test('fetches users', async () => {
axios.get.mockResolvedValue({ data: [{ id: 1 }] });
const users = await fetchUsers();
expect(users).toHaveLength(1);
});
Resources
Validation
- Tests pass with
npm test - Coverage report generates
- Mocks work correctly