[ad_1]
Testing is essential for guaranteeing React apps are secure and bug-free. Fashionable instruments like Jest and React Testing Library make testing React parts easy.
Let’s have a look at learn how to write nice exams for React:
render Element
Render the part right into a check atmosphere utilizing render
from React Testing Library:
import { render } from '@testing-library/react';
import Button from './Button';
check('shows button textual content', () => {
const { getByText } = render(<Button>Click on</Button>);
anticipate(getByText('Click on')).toBeInTheDocument();
});
This renders the part just about for testing.
Fireplace Occasions
Simulate consumer occasions like clicks with fireEvent
:
check('calls onClick prop on click on', () => {
const onClick = jest.fn();
const { getByText } = render(<Button onClick={onClick}>Click on</Button>);
fireEvent.click on(getByText('Click on'));
anticipate(onClick).toHaveBeenCalledTimes(1);
});
Assertion Matchers
Use matchers like toBeInTheDocument
to make assertions:
// Assertion passes
anticipate(getByText('Click on')).toBeInTheDocument();
// Assertion fails
anticipate(getByText('Click on')).not.toBeInTheDocument();
Mock Features
Spy on callbacks with mock features:
const handleChange = jest.fn();
// work together with part
anticipate(handleChange).toHaveBeenCalledWith('enter worth');
This enables asserting perform calls.
Abstract
- Use render to mount parts
- Fireplace occasions to simulate interplay
- Make assertions with matchers
- Spy on callbacks with mock features
Automated testing ends in strong React parts you possibly can refactor with confidence.
[ad_2]