Выбор ответа Junior Тестирование обновлено
Как проверить, что элемента нет
Вопрос
Нужно проверить, что после закрытия модалки её заголовка нет в DOM. Какой вариант правильный?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: expect(screen.queryByText('Настройки')).not.toBeInTheDocument(). queryBy возвращает null, если элемент не найден, и expect спокойно это проверяет. - getBy бросит ошибку ещё до expect, тест упадёт не там и не с тем сообщением. - findBy ждёт появления и отклонит промис, если элемента нет. - getByTestId…
Варианты ответа
expect(screen.getByText('Настройки')).toBeNull()expect(await screen.findByText('Настройки')).not.toBeInTheDocument()expect(screen.queryByText('Настройки')).not.toBeInTheDocument()правильный ответexpect(screen.getByTestId('modal')).toBeFalsy()
Разбор
queryBy возвращает null, если элемент не найден, и expect спокойно это проверяет.
getByбросит ошибку ещё доexpect, тест упадёт не там и не с тем сообщением.findByждёт появления и отклонит промис, если элемента нет.getByTestIdтоже бросит ошибку при отсутствии элемента.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.