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

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

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

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

В этой статье вы найдете пример Hello World с Robolectric

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

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

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

2017 ответ

В документации для Android имеется тематическая серия « Лучшие практики тестирования» . Я бы начал там.

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

пример

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

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