Подтвердить что ты не робот

Лучшие практики тестирования Android-устройств?

Я разрабатываю мобильное приложение для Android. Каковы наиболее распространенные библиотеки/фреймворки, используемые для тестирования модулей Android? Я чувствую, что большая часть бизнес-логики, тестирования базы данных, тестирования веб-сервисов может быть выполнена с помощью JUnit.

Однако, какой лучший подход для тестирования пользовательского интерфейса, рабочего процесса пользовательского интерфейса и т.д.? Например, как мы можем проверить, успешно ли приложение Android запускает веб-браузер? Или как мы можем подтвердить, что кнопки, некоторые вещи нажаты успешно? Или если изображения загружены успешно?

4b9b3361

Ответ 1

Я использую JUnit для модульного тестирования и Robolectric для контрольных испытаний.

В этой статье показан пример Hello World с Robolectric

В последнее время я изучаю интеграционное тестирование на Android, используя Arquillian Droidium.

Если вы хотите протестировать некоторый код, который использует REST API, вы можете высмеять его WireMock. С помощью этой библиотеки вы можете издеваться над API-интерфейсами REST с помощью кода или даже развертывать макетный HTTP-сервер на своей собственной машине и настраивать свои собственные смешные сопоставления.

Для REST API mocks я также рекомендую использовать Mockable.io.

Ответ 2

2017 ответ

В документации для Android есть тематическая серия под названием Best Practices for Testing. Я бы начал там.

Локальные тесты и контрольные тесты настраиваются по умолчанию при запуске нового проекта. Общий совет - использовать локальные тесты, когда это возможно. Иногда это требует насмешки над объектом, который использует Android API. Документация рекомендует, используя Mockito в этих случаях, Когда нужно выполнить тесты UI (инструментальные тесты), Android предоставляет Espresso. Существуют и другие доступные инструменты, такие как Monster Exerciser (для стресс-тестирования) и UI Automator (для тестирования взаимодействия нескольких приложений).

Пример

См. этот ответ о том, как начать работу с тестами в Android Studio.