Ответ вслух Middle Тестирование спрашивают часто обновлено

Стратегия тестирования RN-приложения

Вопрос

Как вы организуете тестирование React Native-приложения?

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

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

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

Коротко

Образцовый ответ: «Основа это TypeScript и линтер: они ловят много ошибок бесплатно. Логику выношу из компонентов в хуки и чистые функции и покрываю Jest: редьюсеры, офлайн-очередь, форматирование, кеш.

Что должно прозвучать в ответе

  • Статика: TypeScript, ESLint

  • Unit-тесты Jest для логики: хуки данных, редьюсеры, очереди, форматирование

  • Компонентные тесты RNTL: поиск по ролям, `userEvent`, моки сети и нативных модулей

  • E2E на Detox или Maestro для критичных сценариев в CI

  • Фейковые таймеры, MSW или подмена API-клиента

  • Тестируемая архитектура: логика вне JSX, зависимости через провайдеры

Что могут спросить следом

  • Как мокать сеть в компонентных тестах?
  • Что тестировать первым в проекте без тестов?
  • Как сделать E2E стабильными?

Разбор

Образцовый ответ: «Основа это TypeScript и линтер: они ловят много ошибок бесплатно. Логику выношу из компонентов в хуки и чистые функции и покрываю Jest: редьюсеры, офлайн-очередь, форматирование, кеш. Экраны проверяю React Native Testing Library: ищу по ролям и тексту, действую через userEvent, сеть подменяю через MSW или фейковый API-клиент, нативные модули моками. Таймеры фейковые. На критичные сценарии, вход и оформление заказа, пишу E2E на Maestro или Detox и гоняю в CI на эмуляторе. Если в проекте тестов нет, начинаю с самого рискованного и денежного: оплата, авторизация, синхронизация»

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

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