Я изучаю модульное тестирование. Реактивируйте компоненты, используя реагирующая библиотека-тестирования
. Однако у меня правильно отображается компонент, когда я собираюсь разбить тест на более мелкие фрагменты внутри.describe()
функция.Тест прерывается, и вот почему.
Текущий только один или другой test()
проходит, но не оба
import React from 'react'
import 'react-testing-library/cleanup-after-each'
import { render, fireEvent } from 'react-testing-library'
import Quantity from '../components/Quantity'
describe('Quantity Component', () => {
const { container, getByTestId } = render(<Quantity />)
// first test
test('checks that quantity is never 0', () => {
expect(getByTestId('quantity')).not.toBe('0')
})
// second test
test('checks for the initial product quantity count', () => {
expect(getByTestId('quantity')).toHaveTextContent('1')
fireEvent.click(getByTestId('increment'))
expect(getByTestId('quantity')).toHaveTextContent('2')
})
})
При попытке запустить оба теста возникают ошибки: Unable to find an element by: [data-testid="quantity"]
[data-testid="quantity"]
- это просто атрибут, который я передал в желаемый тег JSX.
Тест проходит при выполнении только первого или второго теста, но не обоих одновременно.
Чего мне здесь не хватает?