Выбор ответа Senior Локаторы обновлено
Зачем локаторы по роли
Вопрос
Почему Playwright и Testing Library рекомендуют getByRole первым выбором?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Ищет элемент как пользователь и скринридер, ловит проблемы доступности. Роль и доступное имя (подпись, текст, aria-label) это контракт с пользователем: при редизайне они меняются редко.
Варианты ответа
- Он быстрее CSS-селекторов, потому что использует дерево доступности
- Ищет элемент как пользователь и скринридер, ловит проблемы доступностиправильный ответ
- Он работает без браузера и подходит для unit-тестов компонентов
- Он не требует уникальности элемента и сам берёт первое совпадение
Разбор
Роль и доступное имя (подпись, текст, aria-label) это контракт с пользователем: при редизайне они меняются редко. Если тест не может найти кнопку по роли, часто это реальный баг доступности. О скорости рекомендации нет (запрос по ролям скорее медленнее CSS), без браузера локаторы Playwright не работают, а уникальность в действиях Playwright требуется всегда.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.