Проверьте свое приложение

В отличие от других типов приложений Android, приложение Home APIs имеет свои собственные уникальные соображения и проблемы, включая зависимость от физических устройств умного дома, надежность сети, безопасность и конфиденциальность, а также совместимость устройств и протоколов. Эти различия влияют на тестирование.

Настройте тестовую среду

Для тестирования приложения Home API жизненно важна надежная тестовая среда.

Хорошей стратегией является изоляция тестовых устройств Home API в выделенной сети Wi-Fi. Это предотвращает помехи от других устройств и позволяет моделировать различные сетевые условия, такие как ограниченная пропускная способность.

Вам нужно будет протестировать различные типы устройств для умного дома от разных производителей. Обязательно тестируйте с реальными физическими устройствами. Виртуальные устройства и эмуляторы имеют свое место, но не стоит полагаться исключительно на них.

Аналогичным образом, тестирование вашего приложения на различных устройствах Android от разных производителей, с разными размерами экрана и на разных версиях Android помогает проверить более широкую совместимость.

Соберите свои инструменты

Следующие инструменты полезны при тестировании приложения Home API:

Инструмент Описание
Google Home Plugin for Android Studio Предоставляет доступ к Google Assistant Simulator , Home Graph Viewer, Google Cloud Logging и Android Debug Bridge (adb) Log Viewer.
Google Home Playground Не заменяет тестирование с использованием реальных физических устройств, но бесценен для многих сценариев тестирования.
Matter Virtual Device (MVD) Еще одно приложение-эмуляция, которое может быть полезно при тестировании с устройствами Matter в приложении Home API.
Эспрессо Позволяет автоматизировать тестирование пользовательского интерфейса. Вам нужно имитировать базовый API для имитации взаимодействия с оборудованием.
Сетевой эмулятор Позволяет моделировать различные сетевые условия и ответы API, что особенно полезно, если ваш Home API использует облачный бэкэнд.
Android Studio Logcat Обрабатывает и анализирует данные журнала.

Применяйте различные подходы и стратегии тестирования

Вам следует применять различные подходы к тестированию вашего приложения Home API. Для получения общей информации о различных методах см. Тестирование приложений на Android . Помимо тестирования пользовательского опыта и безопасности, которое должны проходить все приложения Android, некоторые области тестирования особенно актуальны для приложений Home API и более подробно описаны в следующих разделах.

Функциональное тестирование

В зависимости от возможностей вашего приложения вам, возможно, стоит уделить особое внимание следующим областям:

  1. Обнаружение и сопряжение устройств, включая начальную настройку и сопряжение с новыми устройствами, повторное обнаружение существующих устройств после перезапуска приложения, перезагрузки устройства или изменений сети. Также проверьте такие сценарии, как неотвечающие устройства или ввод пользователем неверных учетных данных.
  2. Синхронизация состояний, гарантирующая, что приложение своевременно обновляется и точно отражает текущее состояние.
  3. Как разрешения управляются и применяются, особенно если ваше приложение поддерживает многопользовательский или общий домашний доступ. Это включает в себя проверку того, что ваше приложение корректно обрабатывает отозванные разрешения.
  4. Если ваше приложение поддерживает сцены, например, сцену «Спокойной ночи», которая выключает весь свет, протестируйте создание, изменение и выполнение сцен. Тестируйте автоматизацию, включая стартеры и действия.

Тестирование производительности

Убедитесь, что ваше приложение отзывчиво и не вносит ненужных задержек. Если возможно, протестируйте его на большом количестве устройств, чтобы оценить масштабируемость и то, как ваше приложение работает под нагрузкой. Также проверьте потребление ресурсов процессора, памяти и батареи вашим приложением, особенно во время активного взаимодействия с устройством, чтобы увидеть, является ли использование ресурсов разумным.

Тестирование надежности и стабильности

В связи с зависимостью от сетевого подключения приложения Home API следует тестировать по следующим сценариям:

  1. Колебание сети
    • Имитируйте обрывы связи Wi-Fi, слабые сигналы и переключения сети.
    • Убедитесь, что ваше приложение корректно обрабатывает отключения и повторные подключения.
    • Убедитесь, что команды ставятся в очередь и выполняются после восстановления подключения, или выдайте соответствующие сообщения об ошибках.
    • Протестируйте приложение из удаленных сетей, а не только из домашней сети.
  2. Отключение устройства
    • Физически отключите устройства.
    • Устройства для выключения и повторного включения питания.
  3. Одновременные операции
    • Отправьте быструю последовательность команд.
    • Попросите нескольких пользователей одновременно управлять одним и тем же устройством.
    • Тестируйте перекрывающиеся сцены и автоматизацию.
  4. Обработка ошибок
    • Форсируйте ошибки API, например, путем имитации ответов сервера облачного API.
    • Проверьте неверный ввод данных пользователем.
    • Проверьте плавную деградацию и информативные сообщения об ошибках.
  5. Надежность . Запустите приложение и подключенные устройства на продолжительное время, чтобы выявить возможные утечки памяти или проблемы со стабильностью.