В отличие от других типов приложений 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 и более подробно описаны в следующих разделах.
Функциональное тестирование
В зависимости от возможностей вашего приложения вам, возможно, стоит уделить особое внимание следующим областям:
- Обнаружение и сопряжение устройств, включая начальную настройку и сопряжение с новыми устройствами, повторное обнаружение существующих устройств после перезапуска приложения, перезагрузки устройства или изменений сети. Также проверьте такие сценарии, как неотвечающие устройства или ввод пользователем неверных учетных данных.
- Синхронизация состояний, гарантирующая, что приложение своевременно обновляется и точно отражает текущее состояние.
- Как разрешения управляются и применяются, особенно если ваше приложение поддерживает многопользовательский или общий домашний доступ. Это включает в себя проверку того, что ваше приложение корректно обрабатывает отозванные разрешения.
- Если ваше приложение поддерживает сцены, например, сцену «Спокойной ночи», которая выключает весь свет, протестируйте создание, изменение и выполнение сцен. Тестируйте автоматизацию, включая стартеры и действия.
Тестирование производительности
Убедитесь, что ваше приложение отзывчиво и не вносит ненужных задержек. Если возможно, протестируйте его на большом количестве устройств, чтобы оценить масштабируемость и то, как ваше приложение работает под нагрузкой. Также проверьте потребление ресурсов процессора, памяти и батареи вашим приложением, особенно во время активного взаимодействия с устройством, чтобы увидеть, является ли использование ресурсов разумным.
Тестирование надежности и стабильности
В связи с зависимостью от сетевого подключения приложения Home API следует тестировать по следующим сценариям:
- Колебание сети
- Имитируйте обрывы связи Wi-Fi, слабые сигналы и переключения сети.
- Убедитесь, что ваше приложение корректно обрабатывает отключения и повторные подключения.
- Убедитесь, что команды ставятся в очередь и выполняются после восстановления подключения, или выдайте соответствующие сообщения об ошибках.
- Протестируйте приложение из удаленных сетей, а не только из домашней сети.
- Отключение устройства
- Физически отключите устройства.
- Устройства для выключения и повторного включения питания.
- Одновременные операции
- Отправьте быструю последовательность команд.
- Попросите нескольких пользователей одновременно управлять одним и тем же устройством.
- Тестируйте перекрывающиеся сцены и автоматизацию.
- Обработка ошибок
- Форсируйте ошибки API, например, путем имитации ответов сервера облачного API.
- Проверьте неверный ввод данных пользователем.
- Проверьте плавную деградацию и информативные сообщения об ошибках.
- Надежность . Запустите приложение и подключенные устройства на продолжительное время, чтобы выявить возможные утечки памяти или проблемы со стабильностью.