Путеводитель по тестированию мобильных приложений

О тестерах часто думают как о людях, которые ищут баги, но вы когда-нибудь думали, как они вообще проводят это тестирование? Чем же они действительно занимаются, и как они могут повысить ценность тестируемого ими продукта?

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

Вопросы

В процессе тестирования очень важно задавать сложные и актуальные вопросы. Если вы хотите стать хорошим тестером, то вам важно быть в курсе последних событий в отрасли, а также иметь подходящее образование и навыки.

Например, тестеры интересуются следующими вопросами:

  • На какой платформе должен работать этот продукт?
  • Что должно делать это приложение?
  • Что произойдет, если я сделаю следующее?

И так далее.

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

С чего начать тестирование

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

На данном этапе тестеры могут задать следующие вопросы:

  • Какая информация существует: спецификации, обсуждение проекта, документация для пользователя, компетентные члены команды, форум поддержки продукта или форум компании изготовителя? Существует ли журнал, обнаруженных уже ошибок?
  • На какой платформе, устройстве и OS, данное приложение должно работать и тестироваться?
  • Какие данные обрабатываются при отправлении заявки (личные данные, информация кредитных карт и т.д.)?
  • Интегрируется ли приложение с внешними приложениями (API, источники данных)?
  • Работает ли приложение с мобильными браузерами?
  • Что клиенты говорят о приложении?
  • Сколько времени планируется для тестирования?
  • Какие приоритеты и какие риски?
  • Кто недоволен функциями приложения и почему?
  • Существуют ли обновления для тестируемого приложения, и какие?

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

Пример: комментарий из мобильного приложения Facebook

Я люблю использовать приложение Facebook в качестве примера, когда я рассказываю о сборе информации в качестве тестера. Жалобы на него есть везде. Стоит только почитать комментарии в магазине ITunes App от некоторых разочарованных пользователи. Множество такого рода комментариев можно найти в сети.

 Приложение Facebook IPhone имеет много отрицательных отзывов.

 

Если бы мне предложили тестировать приложения Facebook, я бы обязательно принял во внимание обратную связь от пользователей. Я был бы дураком, если б не сделал этого!

Творчество тестеров

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

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

Тестеры могут представлять себя в следующих образах:

  • Начинающей пользователь,
  • Опытный пользователь,
  • Фанат,
  • Хакер,
  • Конкурент.

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

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

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

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

  • Будет ли приложение делать то, что написано о нем в сети?
  • Приложение выполняет те функции, для которых оно было разработано?
  • Приложение выполняет функции, которые при разработке не учитывались?
  • Как будет работать приложение сразу после загрузки? Если скорость его будет маленькая то, что это значит? Нужны ли обновления? Сообщает ли оно об ошибке?
  • Сообщения об ошибках дают исчерпывающую информацию?
  • Пользователи доверяют вашему бренду?
  • Как обеспечивается безопасность личных данных пользователя?
  • Возможно, ли сломать или взломать приложение?
  • Требует ли приложению включить дополнительные сервисы (такие как GPS, Wi-Fi)? Что произойдет, если пользователь это делает? Что, если нет?
  • Куда приложение меня перенаправляет? На сайт? С сайта на приложение? Может ли это вызвать дополнительные проблемы?
  • Согласованы ли между собой маркетинговая компания и функции, дизайн и контент приложения?
  • Как происходит процесс регистрации в приложении? Возможно, ли это сделать через приложение? А через сайт?
  • Можно ли зарегистрироваться в приложении с помощью интеграции с такими сервисами как Facebook и Twitter?

Пример: RunKeeper’s Buggy Update

RunKeeper, приложение для отслеживания ваших занятий фитнесом, недавно выпустило обновление с новой функцией “Постановка целей”. Мне было интересно протестировать эту новую функцию и как тестеру, и как пользователю. В процесс использования данного приложения, я столкнулся с некоторыми проблемами:

  • Приложение отображало вес в фунтах, мне же требовалось в килограммах. Переключение с фунтов в килограммы работало некорректно.
  • В конечном итоге другая мера приводит к путанице в графиках и показывает неправильные данные в разделе моих целей.
  • В связи с этим, я хотел удалить свои цели, но оказалось, что в приложении нет такой функции.
  • Чтобы это сделать, мне надо было измерить свой текущий вес, и если он соответствовал поставленной мною цели, цель считалась достигнутой.
  • Я мог бы попробовать добавить цель еще раз.
  • Из-за всей этой путаницы, я потратил на это приложение куда больше времени, чтобы увидеть какие еще ошибки оно покажет.

Ниже приведены скриншоты некоторых вопросов.

RunKeeper Date Bug

В последних обновлениях RunKeeper включен новый раздел «Цели». Тестируя приложение, я обнаружил, что дата начала и конца цели может быть установлена 1 года н.э. Кроме того, почему два года с “1″ ?

Run Keeper Typo Bug 

Другая ошибка в приложении RunKeeper. Опечатка в разделе «Текущий вес». Это произошло при удалении данных из поля. Простая ошибка и легко исправляется, но выглядит очень непрофессионально.

Run Keeper Goals Bug 

Вот та путаница, что произошла в результате переключения фунтов на килограммы. Если я хочу потерять 46 фунтов, меню показывает 21 фунт. 

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

Где данные?

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

Ниже я привожу самые распространенные варианты:

  • Как работает мобильное устройство с загруженными данными;
  • Как работает мобильное устройство, когда, тестер удаляет все данные;
  • Что происходит с данными, если тестер удаляет приложение;
  • Как работает мобильное устройство, если тестер удаляет приложение, а потом устанавливает его повторно;
  • Как работает приложение в разное время и в разных зонах;
  • Как работает мобильное устройство, если данные не синхронизируются;
  • Как работает мобильное устройство, если синхронизация была прервана;
  • Обновления данных влияет на другие функции;
  • Данные обрабатываются достаточно быстро;
  • Как работает мобильное устройство, если используются неверные данные;

Плохой пример: Soup.me

Я пробовал работать с сервисом Soup.me, который сортирует фотографии с Instagram по лицам и цветам, но у меня не получилось. Когда я попытался зарегистрироваться на сервисе, мне было отказано, по причине того, что у меня не было достаточно фотографий на Instagram. Это не так, потому что в моем аккаунте в Instagram  на тот момент насчитывалось около 500 фотографий. Я так и не выяснил, в чем же тут проблема. Это могл …

Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров

Comments are closed.