Выбор ответа Junior Тестирование обновлено
Какой запрос RTL предпочтительнее
Вопрос
Какой способ найти кнопку отправки RTL рекомендует в первую очередь?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: screen.getByRole('button', { name: 'Отправить' }). Поиск по роли и доступному имени повторяет то, как элемент воспринимают пользователи и скринридеры.
Варианты ответа
screen.getByRole('button', { name: 'Отправить' })правильный ответscreen.getByTestId('submit-btn')с явным test idcontainer.querySelector('button.btn-submit')screen.getByText('Отправить', { selector: 'span' })
Разбор
Поиск по роли и доступному имени повторяет то, как элемент воспринимают пользователи и скринридеры. Если кнопка сделана из div, тест сразу это покажет.
getByTestIdэто крайний случай: пользователю test id не виден.querySelectorпо классу привязывает тест к стилям и разметке.getByTextнайдёт текст, но не проверит, что это кнопка.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.