Ответ
Тестирование на устойчивость к прерываниям проверяет, как приложение ведет себя при внешних событиях, которые могут его прервать или перевести в фоновый режим.
Типичные сценарии прерываний:
- Входящий звонок или SMS.
- Переключение на другое приложение.
- Изменение ориентации экрана.
- Потеря и восстановление сетевого соединения.
- Низкий заряд батареи или переход в режим энергосбережения.
- Уведомления от других приложений.
Что проверять:
- Сохранение состояния и данных (не должна теряться введенная информация).
- Корректное возобновление работы после возврата в приложение.
- Отсутствие крешей (падений) и утечек памяти.
Инструменты и примеры:
- Espresso для Android: Можно эмулировать прерывания.
@Test fun testOnIncomingCall() { onView(withId(R.id.input_field)).perform(typeText("Important Text")) // Эмуляция прерывания (например, нажатие Home) uiDevice.pressHome() // Возврат в приложение uiDevice.pressRecentApps() // Проверка, что текст сохранился onView(withId(R.id.input_field)).check(matches(withText("Important Text"))) } - Monkey Testing: Генерация случайных событий (тапов, жестов, системных прерываний) для проверки общей стабильности.
- Ручное тестирование: Систематическая проверка ключевых сценариев при различных прерываниях.