Как тестировать push-уведомления в мобильном приложении?

«Как тестировать push-уведомления в мобильном приложении?» — вопрос из категории Мобильное тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Тестирование push-уведомлений охватывает их доставку, отображение, функциональность и работу в различных состояниях системы.

Основные области проверки:

  1. Доставка и отображение:

    • Уведомление приходит при наступлении целевого события (новое сообщение, напоминание).
    • Корректность содержимого: заголовок, текст, иконка (app icon и custom image).
    • Наличие и корректность звука и вибрации (согласно настройкам).
    • Отображение в шторке уведомлений и в центре уведомлений ОС.
  2. Интерактивность и действия:

    • Тап по уведомлению открывает приложение на правильном экране (deep linking).
    • Работают ли action-кнопки в уведомлении (например, "Ответить", "Отметить как прочитанное").
    • Правильная группировка уведомлений (например, по чатам).
  3. Работа в разных состояниях приложения:

    • Приложение активно и на переднем плане.
    • Приложение свёрнуто или находится в фоне.
    • Приложение полностью закрыто.
    • Устройство в режиме "Не беспокоить" (Do Not Disturb).
  4. Настройки системы и особенности ОС:

    • Поведение при отключении уведомлений для приложения в настройках ОС.
    • Влияние режимов энергосбережения (Battery Optimization) на доставку.
    • Особенности разных версий iOS и Android.
    • Локализация текста уведомлений.

Пример отправки тестового уведомления на Android через ADB:

# Отправка уведомления с данными
adb shell am broadcast -a com.example.app.PUSH_TEST 
  --es "title" "Test Title" 
  --es "message" "Test message body" 
  --es "type" "news"

Для iOS используйте сертификаты и payload, отправляемые через APNs (Apple Push Notification service) в sandbox-режиме.