Тестирование мобильных приложений

Чтение займет: 4 мин.

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

Функциональное тестирование

Главное здесь — проверить взаимодействие приложения с пользователем, а также узнать, соответствует ли функционал продукта его типу, целям, задачам и целевой аудитории. Для функционального тестирования мы составляем техническое задание по требованиям бизнес-процессов. На основе ТЗ делаются сценарии использования приложения. Они имитируют поведение обычных пользователей. В процессе смотрим:

  • Работают ли поля ввода,
  • Как отображаются поля обязательные и необязательные,
  • Переходит ли приложение в фоновый режим при входящем,
  • Как работают кнопки, навигация и переходы в социальные сети,
  • Позволяет ли приложение принимать и отправлять SMS в процессе работы,
  • Проходят ли транзакции через Visa, Мир, а также Mastercard,
  • Как функционирует прокрутка,
  • Выдаются ли ошибки сети,
  • Разворачиваются ли списки, меняют ли цвет активированные кнопки, а также ссылки,
  • Не отбирает ли приложение память у других сервисов,
  • Как работает с сетями 2G, 3G — 4G,
  • Доступность руководства пользователя.

Функциональное тестирование

Дополнительный блок тестирования

Дополнительно система тестируется по позитивным и негативным сценариям. Так, с  позитивными мы пробуем выполнить действия т их варианты, предусмотренные функционалом. Например, зарегистрироваться, войти/выйти, восстановить пароль, сменить настройки и пр. Тестирование этого блока считается пройденным, если все действия выполняются корректно и без ошибок.

С негативными пытаемся обмануть систему и найти баги. Допустим, регистрируемся на один и тот же mail, создаем одинаковые контакты, пытаемся войти с неправильным паролем, дублируем информацию в полях и т.д. Здесь все с точностью до наоборот: если негативное действие выполняется успешно, приходится искать и исправлять ошибку.

В рамках функционального тестирования досконально проверяем пользовательский интерфейс. Смотрим, как ведут себя языковые локализации и как смотрится верстка на разных языках. Названия полей или пунктов навигации на русском и английском языках часто получаются разной длины и если этого не учесть, верстка будет выглядеть неряшливо.

В нативных приложениях проверяем работу нативных жестов. Все подряд свайпим и мультитачим, пока не отвалятся пальцы или не обнаружится ошибка.Тестирование нативных жестовУ приложений, у которых минут простоя чревата финансовыми, а также репутационными потерями, дополнительно делаем тестирование восстановления. Смотрим, как продукт ведет себя после системного сбоя или жесткой перезагрузки. Обязательно проверяем, как проходят транзакции в режиме экономии энергии батареи. Контролируем, насколько корректно восстанавливаются введенные данные после сбоя и отключения.

В целом, на этой стадии мы оцениваем два параметра. Первый — соответствует ли приложение своей категории (банковское, игровое, детское), а также целевой аудитории (дети, бизнес, 60+). И второй — удовлетворяет ли оно поставленным задачам.

Нагрузочное тестирование мобильного приложения

Представляем, что приложение работает с большими данными, с переключением на разные сети, при мультизадачной работе устройства…При тестировании под нагрузкой важно проверить все аспекты, которые могут влиять на подтормаживание системы:

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

Тестирование безопасности

Здесь проходимся по узким местам. Как правило, представляем себя на месте хакера. Что бы хотелось вытянуть из приложения и как это сделать? Обычно в базовый список тестирования безопасности приложения входит:

  • Проверка безопасности логинов, паролей, а также данных банковских карт,
  • Контроль доступа к личной информации путем подбора,
  • Оценка таймаута сессии,
  • Просмотр на предмет дыр и неполадок механизмов защиты от DoS — SQL-injection атак,
  • Есть ли где-то неуправляемый код,
  • Смотрим срок действия сертификатов безопасности,
  • Убеждаемся, что управление сеансами защищено от неавторизованных пользователей.

Список большой и постоянно пополняется. Об этом неустанно заботятся профессиональные киберпреступники и хакеры-любители.
Тестирование безопасности

Тестирование совместимости

На разных устройствах одно и то же приложение может работать по-разному. А может не работать вообще. Был у нас один такой случай с приложением радио «Вера». Прямые эфиры, ради которых и затевался ремонт приложения, работали у всех. Кроме руководителя. Мы даже описали этот случай в своем Инстаграме.

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

Так что теперь не ограничиваемся эмуляторами, и стараемся тестировать приложения на всем, что звонит.

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

Юзабилити-тестирование мобильного приложения

Разрабатывая приложение, мы делаем его интуитивно простым и соответствующим UX-стандартам интерфейсом. Теперь смотрим, все ли учли:

  • Подходят ли кнопки для крупных пальцев настоящей мужской руки,
  • Нет ли лишних полей,
  • Хорошо ли виден текст,
  • Не избыточны ли меню,
  • Удобно ли ставить галочки и чек-боксы,
  • Соответствует ли скорость отклика ожиданиям пользователей и пр. и др.

Для юзабилити-тестирования есть несколько неплохих сервисов. Однако ни один сервис не заменит живую целевую аудиторию — реальную бабушку со смартфоном или занятого менеджера, судорожно тыкающего в кнопки. Тестируем на людях.

В виде чек-листа тестирование мобильного приложения занимает несколько страниц. При переводе в человеко-часы — несколько дней. Но их не жалко, честное слово. Потому как от глубины тестирования зависит качество приложения и реакция пользователей. Хотите пять звезд в Google Play? Не игнорируйте этап тестирование приложения и повторяйте его после каждого релиза. Это работает, мы пробовали.


Полезные ссылки

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *