ПоставщикамБлог

Мобильное тестирование

Мобильное тестирование

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

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

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

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

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

  • Планирование. Когда этап разработки приложения почти завершен, вы должны снова поставить перед собой вопрос - чего вы пытаетесь достичь разработкой данного приложения и какие у вас есть ограничения.
  • Определение необходимых типов тестирования мобильных приложений. Определите, что именно в данном мобильном приложении вы хотите протестировать: набор функциональности, удобство использования, совместимость, производительность, безопасность и т. д.
  • Тестовые случаи и разработка сценариев тестирования приложения.Подготовьте документ, описывающий тестовые случаи для каждой тестируемой функции и функциональности.
  • Автоматическое и ручное тестирование мобильных приложений. Теперь пришло время для выполнения ручных и автоматизированных тестов. На текущем этапе, вы выполняете запуск тестов для проверки механизмов основной функциональности, чтобы убедиться в отсутствии поломок.
  • Тестирование юзабилити и бета-тестирование. На этом этапе необходимо поддерживать соответствие матрице кроссплатформенности, чтобы обеспечить охват пользователей различных платформ, достигнутый бета-тестерами.
  • Тестирование производительности. Мобильные устройства предоставляют для приложений меньший объем памяти и меньшую доступную мощность процессора, чем стационарные компьютеры и ноутбуки. По этой причине в работе мобильных приложений очень важна эффективность использования предоставляемых ресурсов.
  • Аттестационное тестирование и тестирование безопасности приложения. Убедитесь, что тестируемое приложение надежно защищено. Выполните проверку на возможность внедрения SQL инъекций, на возможность перехвата сеансов, анализа дампов данных, анализа пакетов и SSL трафика.
  • Тестирование устройства. Выполните тесты по тем алгоритмам, которые вы ранее прописали в тестовых случаях и сценариях тестирования на всех определенных для тестирования устройствах, в облаке и / или на физических устройствах.
  • Контрольный этап и резюме. Этот этап включает в себя подробное и полное тестирование. На этом этапе тестирования вы можете добавить для проверки новые функции и изменить настройки на те, которых не будет в финальной версии.

 

 

 

Наиболее популярные продукты категории Мобильное тестирование Все продукты категории

TESTBYTES Mobile App Testing
11
14

F.A.Q. Мобильное тестирование

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

Функциональное тестирование приложений. Проверка, правильно ли функционирует приложение (то есть так, как было задумано и как прописано в техническом задании). Для разработчиков работа приложения может быть очевидной, но именно этот тест покажет, правильно ли поняли исполнители, чего хотел заказчик. Включает в себя тестирование транзакций (функции приложения в действии) и пользовательского опыта (взаимодействие пользователя с интерфейсом приложения).

Нагрузочное тестирование. Цель — проверить, корректно ли функционирует приложение при разном количестве пользователей и при переходе из Wi-Fi в мобильную сеть. Найти участки приложения, которые могут тормозить его работу. Убедиться, что приложение не съедает всю батарею смартфона. Нагрузочное тестирование мобильных приложений проходит в автоматическом режиме путем имитации действий нужного количества пользователей.

Конфигурационное тестирование. Конфигурационное тестирование показывает, корректно ли работает мобильное приложение (а именно, его клиентская часть) на разных устройствах. Обычно перед конфигурационным тестированием готовится матрица покрытия, куда заносят все нужные конфигурации. Далее конфигурации приоретизируют и проверяют в первую очередь важные варианты. Потому как проверить функционирование и отображение на всех устройствах и при всех условиях практически невозможно — нужно должны понять, чем можно пожертвовать, а лучше, как найти оптимальный компромисс.

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

Юзабилити-тестирование. Юзабилити — это свойство интерфейса, которое либо помогает взаимодействию пользователей с приложением, либо затрудняет его. С одним интерфейсом мы ладим легко и непринужденно — от взаимодействия с другим испытываем раздражение и не достигаем нужной цели (либо достигаем с трудом). Юзабилити тестирование мобильных приложений помогает выяснить, как пользователи взаимодействуют с приложением.

Какой тип тестирования мобильных приложений является наиболее важным?

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

Помимо перечисленных выше типов, важно также проводить monkey testing, чтобы проверить стабильность приложения, когда предоставляются непрерывные неверные пользовательские данные.

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

Автоматизация тестирования мобильных приложений

Автоматизированное тестирование мобильных приложений предполагает использование одного из следующих подходов:

  • Record and Play. Способ прост и сводится к записи всех действий пользователя (тестировщика) в приложении. После записи действий инструмент генерирует понятный для него код и создает автотесты. Плюсы: быстрая реализация, не требуется знаний программирования. Минус: малейшие изменения в приложении потребуют создать новый автотест.
  • Screen Object. Паттерн, предназначенный для организации архитектуры автотестов в виде взаимодействия экранов приложения. Он моделирует экраны (или страницы) тестируемого приложения в качестве объектов в коде. В результате мы получаем набор классов, каждый из которых отвечает за работу с отдельным экраном приложения. Плюсы: есть возможность переиспользовать код, надежность кода, небольшая чувствительность к изменениям в приложении, понятная структура. Минусы: требует знаний языков программирования, скорость разработки.

Инструментов для автоматизации много. Но важно отметить, что некоторые из них подходят для приложений, написанных на конкретном языке программирования. Например, Xamarin подходит только для приложений на С#. Некоторые – стоят немалых денег (например, утилита Ranorex). Поэтому очень важно до начала взвесить все «за» и «против» не только самого процесса, и инструмента для ее реализации и убедится, что автотестирование мобильных приложений в вашем случае будет правильным выбором.