Реконнект-тесты проверяют, как мобильное приложение ведет себя при потере и последующем восстановлении соединения с сервером или другими сетевыми ресурсами.
Сценарии тестирования:
- Переключение сети:
- Wi-Fi -> Мобильный интернет (LTE/5G).
- Мобильный интернет (LTE/5G) -> Wi-Fi.
- Wi-Fi (одна точка) -> Wi-Fi (другая точка).
- Потеря сигнала:
- Вход в зону без покрытия (лифт, метро).
- Включение/выключение режима "В самолете".
- Принудительное отключение сетевых интерфейсов (Wi-Fi, Cellular Data) через настройки устройства.
- Проблемы на сервере:
- Временная недоступность API.
- Перезагрузка сервера.
- Сетевые задержки (симуляция с помощью прокси-серверов).
Что проверяем:
- Поведение UI/UX:
- Отображение индикаторов загрузки или ошибок.
- Сохранение текущего состояния пользователя (например, незавершенный ввод, позиция в списке).
- Корректное отображение уведомлений о потере/восстановлении соединения.
- Отсутствие сбоев или "зависаний" приложения.
- Целостность данных:
- Данные, которые были в процессе отправки/получения во время разрыва, должны быть корректно обработаны после восстановления.
- Локально сохраненные данные должны синхронизироваться с сервером.
- Повторные попытки (Retry Logic):
- Приложение должно иметь логику повторных попыток отправки запросов с экспоненциальной задержкой (backoff).
- Лимиты на количество повторных попыток и время ожидания.
- Обработка сессий:
- Пользовательская сессия должна сохраняться или быть корректно восстановлена без принудительного логаута.
Инструменты и техники:
- Сетевые прокси: Charles Proxy, Fiddler. Позволяют симулировать задержки, дроп пакетов, блокировать запросы.
- Сетевые утилиты: Инструменты разработчика в браузере (для вебвью), специализированные мобильные утилиты для контроля трафика.
- Режим "В самолете": Простой способ симулировать полную потерю связи.
-