Выбор ответа Middle Тестирование обновлено

RNTL: userEvent или fireEvent

Вопрос

Чем userEvent.press отличается от fireEvent.press?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: userEvent проходит цепочку событий нажатия, а fireEvent вызывает один обработчик. fireEvent.press просто вызывает onPress. userEvent проходит путь пользователя: pressIn, pressOut, press, учитывает задержки и состояния, поэтому ловит ошибки, которые прямой вызов пропустит.

Варианты ответа

  1. fireEvent работает только на Android, а userEvent одинаково на обеих платформах
  2. userEvent синхронный, а fireEvent асинхронный и требует await
  3. userEvent проходит цепочку событий нажатия, а fireEvent вызывает один обработчикправильный ответ
  4. Разницы нет: это синонимы, userEvent оставлен для совместимости

Разбор

fireEvent.press просто вызывает onPress. userEvent проходит путь пользователя: pressIn, pressOut, press, учитывает задержки и состояния, поэтому ловит ошибки, которые прямой вызов пропустит. API userEvent асинхронный (нужен await). Платформенных ограничений у fireEvent нет.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.