Мобильные приложения используются юзерами не так как веб- или десктоп-приложения. Различия заложены в поведении пользователя. Мы часто пользуемся мобильными приложениями «на лету», в дороге, в лифте, на остановке. Телефон быстро запускается, часто уходит в спящий режим, переключается между вышками связи и т. д. Сравните с веб-приложениями, которые, как правило, открываются на компьютере с большим экраном, а пользователь находится в удобном кресле на работе, дома или в кафе. В таких условиях пользователь готов вглядываться в монитор, уделять внимание информации, щедро рассыпанной на сайте. При использовании телефона маленький экран и меняющееся окружение влияют на восприятие пользователя.
Он раздражается, если страница загружается больше 2 секунд или ему непонятно куда нажать, чтобы перейти к нужной информации. Масла в огонь подливают крупные компании, такие как Facebook или Twitter, которые выпускают приложения отменного качества, тратят на исследования каждой кнопки и тестирование каждой функции сотни и тысячи человеко-часов (читай $). На их фоне приложения со слабым или не проработанным UI сильно проигрывают. Еще сильнее проигрывают приложения с нестабильной работой в изменяющихся условиях.
Такое отличие в поведении пользователей мобильных приложений накладывает другие требования не только к проектированию, но и к разработке и тестированию мобильных приложений.
Вот почему тестирование мобильных приложенией отличается от тестирования веб- и десктоп-приложений и является отдельным направлением, которое обладает своими нюансами.
В этой статье я подробно разберу тестирование Android-приложений ввиду их сложности, продиктованной разными типами устройств и универсальностью Андроид ОС.
Отличие Android от iOS.
Выбор устройств для тестирования.
Особенности, связанные с инсталляцией, удалением и обновлением.
Работа с хардовыми кнопками.
Сети (Wi-Fi, 3G, 4G, Edge etc.) и особенности взаимодействия приложения с сетями.
Прерывания и переключения.
Тестирование графического и логического интерфейсов проекта (UI\\UX).
Проверка работы с памятью мобильного устройства или телефона.
Локализация.
Потребление питания.
Это далеко не все вопросы, возникающие при тестировании мобильного приложения, но даже беглое знакомство с ними дает представление о сложности этого процесса. Рассмотрим эти вопросы по порядку.
Изображение с сайта 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
К тому же обновлений данной ОС много, что увеличивает время на тестирование. Чтобы проверить мобильное приложение на младшей версии по сравнению с той, что установлена на устройстве, рекомендую сделать даунгрейд прошивки.
Продолжение следует
Появилась идея для проекта? Мы хотим узнать о том, что важно для вас
Связаться