Особенности тестирования Android-приложений. Часть 1

Введение

Мобильные приложения используются юзерами не так как веб- или десктоп-приложения. Различия заложены в поведении пользователя. Мы часто пользуемся мобильными приложениями «на лету», в дороге, в лифте, на остановке. Телефон быстро запускается, часто уходит в спящий режим, переключается между вышками связи и т. д. Сравните с веб-приложениями, которые, как правило, открываются на компьютере с большим экраном, а пользователь находится в удобном кресле на работе, дома или в кафе. В таких условиях пользователь готов вглядываться в монитор, уделять внимание информации, щедро рассыпанной на сайте. При использовании телефона маленький экран и меняющееся окружение влияют на восприятие пользователя.

Он раздражается, если страница загружается больше 2 секунд или ему непонятно куда нажать, чтобы перейти к нужной информации. Масла в огонь подливают крупные компании, такие как Facebook или Twitter, которые выпускают приложения отменного качества, тратят на исследования каждой кнопки и тестирование каждой функции сотни и тысячи человеко-часов (читай $). На их фоне приложения со слабым или не проработанным UI сильно проигрывают. Еще сильнее проигрывают приложения с нестабильной работой в изменяющихся условиях.

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

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

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

Чек-лист по проверке каждого мобильного Android-приложения:

  1. Отличие Android от iOS.

  2. Выбор устройств для тестирования.

  3. Особенности, связанные с инсталляцией, удалением и обновлением.

  4. Работа с хардовыми кнопками.

  5. Сети (Wi-Fi, 3G, 4G, Edge etc.) и особенности взаимодействия приложения с сетями.

  6. Прерывания и переключения.

  7. Тестирование графического и логического интерфейсов проекта (UI\UX).

  8. Проверка работы с памятью мобильного устройства или телефона.

  9. Локализация.

  10. Потребление питания.

Это далеко не все вопросы, возникающие при тестировании мобильного приложения, но даже беглое знакомство с ними дает представление о сложности этого процесса. Рассмотрим эти вопросы по порядку.


Изображение с сайта bgr.com

Различие мобильных ОС

Я выделяю следующие важные особенности Android-OS относительно iOS.

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

Неактуальные версии операционной системы. Android-OS — операционная система с открытым программным кодом для смартфонов и планшетов, основанная на ядре Linux, и пользователи не стремятся ее обновлять сразу. Если, например, новейшая версия — Android 8.1, то наиболее популярной является версия 6.0.

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

Изображение с сайта www.pocket-lint.com/

Многообразие прошивок телефонов. Многие производители Android-устройств стараются поверх Android-OS наложить свою оболочку. Это делается по ряду причин: использование эксклюзивных фич (например: Bixby, сжатие устройства в руке, которое приводит к активации функции и т. д.), дизайн, расположение системных кнопок (может быть как на дисплее, так и на рамке смартфона), “не быть как все” и т. д.

Изображение с сайта www.android-dz.com

К тому же обновлений данной ОС много, что увеличивает время на тестирование. Чтобы проверить мобильное приложение на младшей версии по сравнению с той, что установлена на устройстве, рекомендую сделать даунгрейд прошивки.

Продолжение следует