Тестирование мобильных приложений - Википедия - Mobile application testing

Тестирование мобильного приложения это процесс, посредством которого программное обеспечение разработан для портативных мобильных устройств, протестирован на его функциональность, удобство использования и согласованность.[1] Тестирование мобильных приложений может быть автоматическим или ручным.[2] Мобильные приложения либо предустановлены, либо могут быть установлены с мобильных платформ распространения программного обеспечения. Выручка от мобильных приложений в мире составила 69,7 млрд долларов. доллар США в 2015 году и, по прогнозам, к 2020 году составит 188,9 млрд долларов США.[3]

Bluetooth, GPS, датчики и Wi-Fi - некоторые из основных технологий, используемых в носимых устройствах.[4] Соответственно, при тестировании мобильных приложений основное внимание уделяется полевым испытаниям, ориентации на пользователей и поиску областей, в которых аппаратное и программное обеспечение необходимо тестировать одновременно.

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

  • Должен быть загружен: Приложение должно быть доступно для конкретной платформы, как правило, из магазин приложений.
  • Разнообразие мобильных платформ / ОС:Они разные мобильные операционные системы в магазине. Основные из них Android, iOS, и телефон с операционной системой Виндоус. Каждая операционная система имеет свои ограничения.
  • Доступность устройства: Доступ к нужному набору устройств при постоянно растущем списке устройств и версий операционных систем является постоянной проблемой тестирования мобильных приложений. Доступ к устройствам может стать еще более затруднительным, если тестировщики разбросаны по разным местам.
  • Операторы мобильной связи: Их более 400 операторы мобильной связи в мире;[5] некоторые CDMA, немного GSM, а другие используют менее распространенные сетевые стандарты, например FOMA, и TD-SCDMA.
  • Сценарии: Разнообразие устройств делает выполнение тестовый сценарий (сценарий) ключевой вызов. Поскольку устройства различаются нажатия клавиш, методы ввода Один скрипт, структура меню и свойства отображения не работает на всех устройствах.
  • Метод испытания: Есть два основных способа тестирования мобильных приложений: тестирование на реальные устройства или тестирование на эмуляторы.[6] Эмуляторы часто упускают из виду проблемы, которые могут быть обнаружены только путем тестирования на реальных устройствах, но из-за множества различных устройств на рынке реальные устройства могут быть дорогими в покупке и требовать много времени для тестирования.[7][8]
  • Совместимость: Надо проверить совместимость; предположим, что приложение может работать с высоким разрешением и не работает с более низким разрешением.[требуется разъяснение ]
  • Должен быть в состоянии поднять трубку: При выполнении приложения приложение должно иметь возможность принимать вызов.
  • Разнообразие мобильных устройств: Мобильные устройства различаются способами ввода с экрана (QWERTY, тач, нормальный) с разными аппаратными возможностями.

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

  • Функциональное тестирование гарантирует, что приложение работает в соответствии с требованиями. Большинство тестов, проводимых для этого, зависит от пользовательского интерфейса и потока вызовов.
  • Лабораторные испытания, обычно выполняемый сетевыми операторами, осуществляется путем моделирования всей беспроводной сети. Этот тест проводится для выявления любых сбоев, когда мобильное приложение использует голосовое и / или информационное соединение для выполнения некоторых функций.
  • Тестирование производительности предпринимается для проверки производительности и поведения приложения при определенных условиях, таких как низкий заряд батареи, плохое покрытие сети, недостаток доступной памяти, одновременный доступ к серверу приложения несколькими пользователями и другие условия. На производительность приложения можно повлиять с двух сторон: со стороны сервера и со стороны клиента. Тестирование производительности выполняется для проверки обоих.
  • Тестирование утечки памяти: Утечка памяти происходит, когда компьютерная программа или приложение не может управлять выделенной памятью, что приводит к снижению производительности приложения и общему замедлению работы системы. Поскольку мобильные устройства имеют значительные ограничения доступной памяти, тестирование на утечку памяти имеет решающее значение для правильного функционирования приложения.
  • Прерывание тестирования: Приложение во время работы может столкнуться с несколькими сбоями, такими как входящие вызовы или выход из строя и восстановление сети. Различные типы прерываний:
  • Входящие и исходящие SMS и MMS
  • Входящие и исходящие звонки
  • Входящие уведомления
  • Удаление батареи
  • Вставка и извлечение кабеля для передачи данных
  • Отключение сети и восстановление
  • Включение / выключение медиаплеера
  • Цикл питания устройства
Приложение должно иметь возможность обрабатывать эти прерывания, переходя в приостановленное состояние и затем возобновляя работу.
  • Юзабилити-тестирование выполняется для проверки того, достигает ли приложение своих целей и получает ли положительный отклик пользователей. Это важно, поскольку удобство использования приложения - его ключ к коммерческому успеху (это не что иное, как удобство для пользователя).[9] Еще одна важная часть юзабилити-тестирования - убедиться, что взаимодействие с пользователем одинаково на всех устройствах.[10] Этот раздел тестирования призван решить ключевые проблемы, связанные с разнообразием мобильных устройств и разнообразием мобильных платформ / ОС, что также называется фрагментацией устройств. Одна из ключевых частей этого типа тестирования удобства использования - убедиться, что нет серьезных ошибок в функциональности, размещении или размере пользовательского интерфейса на разных устройствах.[11]
  • Тестирование установки: Некоторые мобильные приложения предустановлены на устройстве, тогда как другие должны быть установлены в магазине. Тестирование установки подтверждает, что процесс установки проходит гладко, без каких-либо трудностей для пользователя. Этот процесс тестирования охватывает установку, обновление и удаление приложения.
  • Сертификационные испытания: Чтобы получить сертификат соответствия, каждое мобильное устройство необходимо протестировать на соответствие рекомендациям, установленным для разных мобильных платформ.
  • Тестирование безопасности проверяет уязвимости для взлома, политики аутентификации и авторизации, безопасности данных, управления сеансами и других стандартов безопасности.[12]
  • Тестирование местоположения: Связь меняется в зависимости от сети и местоположения, но вы не можете имитировать эти меняющиеся условия в лаборатории. Только в стране[требуется разъяснение ] неавтоматические тестировщики могут выполнять комплексное тестирование удобства использования и функциональности.
  • Тестирование устаревшего программного обеспечения: Не все регулярно обновляют свою операционную систему. Некоторые пользователи Android могут даже не иметь доступа к последней версии. Профессиональные тестировщики могут тестировать устаревшее программное обеспечение.
  • Нагрузочное тестирование: Когда многие пользователи пытаются загрузить, загрузить и использовать приложение или игру одновременно, может произойти медленное время загрузки или сбои, в результате чего многие клиенты откажутся от вашего приложения, игры или веб-сайта. Тестирование на людях в стране, проводимое вручную, является наиболее эффективным способом проверки нагрузки.[13]
  • Тестирование черного ящика не включает внутреннюю логику кодирования приложения. Тестировщик проверяет функциональность приложения без пиринга с внутренней структурой приложения.[требуется разъяснение ] Этот метод тестирования может применяться практически на всех уровнях тестирования программного обеспечения: модульное, интеграционное, системное и приемочное.
  • Краудсорсинговое тестирование: В последние годы краудсорсинговое тестирование стало популярным, поскольку компании могут тестировать мобильные приложения быстрее и дешевле, используя глобальное сообщество тестировщиков. Из-за растущего разнообразия устройств и операционных систем, а также потребностей в локализации сложно всесторонне тестировать мобильные приложения с помощью небольших внутренних групп тестирования. Глобальное сообщество тестировщиков обеспечивает легкий доступ к различным устройствам и платформам. Глобально распределенная команда также может протестировать его в нескольких местах и ​​в разных сетевых условиях. Наконец, проблемы с локализацией можно проверить, наняв тестировщиков в необходимых регионах. Поскольку реальные пользователи, использующие реальные устройства, тестируют приложение, это с большей вероятностью обнаружит проблемы, с которыми пользователи сталкиваются в реальных условиях.[14][15]

Рекомендации

  1. ^ "'Что такое мобильное тестирование? », SmartBear Software». smartbear.com. Получено 2014-07-23.
  2. ^ "'Повышение эффективности и производительности с помощью Test Automation ', Bitbar ". bitbar.com. Получено 2014-08-07.
  3. ^ «Доходы от мобильных приложений 2015-2020 | Статистика». Statista. Получено 2019-03-08.
  4. ^ «Базовая технология носимых устройств». DigiTimes. 15 июля 2014 г.
  5. ^ «Стратегии и тактики тестирования мобильных приложений, основная статья» (PDF). Keynote.com. Получено 2012-05-02.
  6. ^ «Тестирование мобильных приложений на эмуляторе и на реальном устройстве». bitbar.com. Получено 2016-11-08.
  7. ^ «Тестирование эмуляторов и реальных устройств | Smashing Magazine». Smashing Magazine. Получено 2016-11-08.
  8. ^ «Подводные камни мобильных эмуляторов | Блог Mobile1st». Mobile1st.com. Получено 2015-09-30.
  9. ^ «StickyMinds | Как матрица эмоций может помочь при тестировании программного обеспечения | Страница 1». StickyMinds. Получено 2015-10-29.
  10. ^ Подрядчик, Лена. "Что такое пользовательский опыт?". WhatUsersDo. Получено 2015-10-31.
  11. ^ «Проблемы мобильного UX, вызванные фрагментацией устройства». Блог Testmunk. Получено 2015-10-31.
  12. ^ [1]
  13. ^ «Тестирование мобильных приложений | Проблемы со службами | Страница 1». GTT. Получено 2016-03-22.
  14. ^ «Тестирование мобильных приложений с использованием управляемого краудсорсинга». Qualitrix.com. 2017-02-06. Получено 2017-03-14.
  15. ^ «6 основных ловушек краудсорсингового тестирования программного обеспечения - QualityLogic». QualityLogic. 2017-10-26. Получено 2018-02-14.