Простое определение тестирования мобильных приложений будет выглядеть так: « Тестирование мобильных приложений — это процесс, с помощью которого прикладное программное обеспечение, разработанное для портативных мобильных устройств, проверяется на его функциональность, удобство использования и согласованность. Тестирование мобильных приложений может быть автоматическим или ручным типом тестирования ».
Примечание. Для лучшего понимания предположим, что мы тестируем мобильное приложение для системы онлайн-бронирования авиабилетов.
Функциональное тестирование
Функциональное тестирование является самым базовым тестом для любого приложения, чтобы убедиться, что оно работает в соответствии с определенными требованиями. Подобно другим приложениям, основанным на пользовательском интерфейсе, мобильные приложения требуют ряда взаимодействий человека в пользовательских сценариях.
Пример тестовых сценариев —
-
Убедитесь, что доступность рейса отображается для выбранного пункта назначения только на выбранную дату.
-
Убедитесь, что прошедшие даты не включены в результаты поиска.
Убедитесь, что доступность рейса отображается для выбранного пункта назначения только на выбранную дату.
Убедитесь, что прошедшие даты не включены в результаты поиска.
Тестирование совместимости
Тестирование совместимости имеет самый высокий стек, когда дело доходит до тестирования мобильных приложений. Цель теста на совместимость мобильного приложения, как правило, состоит в том, чтобы ключевые функции приложения работали должным образом на конкретном устройстве. Сама совместимость должна занимать всего несколько минут и может быть спланирована заранее.
Это не будет легкой задачей, решить, какие тесты на совместимость мобильных устройств следует выполнить (поскольку тестирование со всеми доступными устройствами просто невозможно). Поэтому подготовьте тестовую матрицу с каждой возможной комбинацией и расставьте приоритеты для клиента.
Пример тестовых сценариев —
- Убедитесь, что поиск авиабилетов успешно выполняется на устройстве Android.
- Убедитесь, что поиск авиабилетов успешно выполнен для Apple iPad.
Тестирование локализации
В настоящее время большинство приложений предназначено для глобального использования, и очень важно заботиться о региональных следах, таких как языки, часовые пояса и т. Д. Важно проверить функциональность приложения, когда кто-то меняет часовой пояс. Необходимо учитывать, что иногда западные дизайны могут не работать с аудиторией из восточных стран или наоборот.
Пример тестовых сценариев —
-
Убедитесь в отсутствии проблем с пользовательским интерфейсом или усечением данных, когда мы используем мобильное приложение на разных языках (или, скажем, не на английском языке).
-
Убедитесь, что изменения часового пояса корректно обрабатываются для вашего мобильного приложения.
Убедитесь в отсутствии проблем с пользовательским интерфейсом или усечением данных, когда мы используем мобильное приложение на разных языках (или, скажем, не на английском языке).
Убедитесь, что изменения часового пояса корректно обрабатываются для вашего мобильного приложения.
Лабораторные испытания
Лабораторные испытания, обычно проводимые сетевыми операторами, выполняются путем моделирования всей беспроводной сети. Этот тест выполняется для обнаружения каких-либо сбоев, когда мобильное приложение использует передачу голоса и / или данных для выполнения некоторых функций.
Пример тестовых сценариев —
-
Убедитесь, что нет никаких сбоев, когда у клиента есть голосовой чат со службой поддержки.
Убедитесь, что нет никаких сбоев, когда у клиента есть голосовой чат со службой поддержки.
Тестирование производительности
Мобильный тест производительности охватывает производительность клиентских приложений, производительность сервера и производительность сети. Важно убедиться, что сценарии тестирования производительности охватывают все эти области. С помощью инструментов тестирования производительности нетрудно идентифицировать существующие сети, серверы и узкие места серверных приложений, учитывая предопределенную нагрузку и сочетание транзакций.
Пример тестовых сценариев —
-
Убедитесь, что проверка доступного рейса занимает только разумное количество времени.
-
Убедитесь, что во время проверки доступности рейса мобильный телефон работает нормально и не зависает.
Убедитесь, что проверка доступного рейса занимает только разумное количество времени.
Убедитесь, что во время проверки доступности рейса мобильный телефон работает нормально и не зависает.
Стресс-тестирование
Стресс-тестирование является обязательным условием для обнаружения исключений, зависаний и взаимоблокировок, которые могут остаться незамеченными во время функционального тестирования и тестирования пользовательского интерфейса. Вот список некоторых критериев для стресс-тестирования —
-
Загрузите в свое приложение как можно больше данных, чтобы попытаться достичь его предела.
-
Выполняйте одни и те же операции снова и снова.
-
Выполняйте повторные операции на разных скоростях — очень быстро или очень медленно.
-
Оставьте приложение работающим в течение длительного периода времени, одновременно взаимодействуя с устройством и просто оставляя его бездействующим, или выполняя некоторую автоматическую задачу, которая занимает много времени, например, слайд-шоу.
-
Случайно отправлять экранные нажатия и нажатия клавиш в вашем приложении.
-
На вашем устройстве должно быть запущено несколько приложений, чтобы вы могли часто переключаться между приложением и другими приложениями на устройстве.
Загрузите в свое приложение как можно больше данных, чтобы попытаться достичь его предела.
Выполняйте одни и те же операции снова и снова.
Выполняйте повторные операции на разных скоростях — очень быстро или очень медленно.
Оставьте приложение работающим в течение длительного периода времени, одновременно взаимодействуя с устройством и просто оставляя его бездействующим, или выполняя некоторую автоматическую задачу, которая занимает много времени, например, слайд-шоу.
Случайно отправлять экранные нажатия и нажатия клавиш в вашем приложении.
На вашем устройстве должно быть запущено несколько приложений, чтобы вы могли часто переключаться между приложением и другими приложениями на устройстве.
Пример тестовых сценариев —
- Проверьте, что 1000 пользователей получают доступ к мобильному приложению для поиска внутренних рейсов.
- Проверьте, что 1000 пользователей получают доступ к мобильному приложению для поиска международных рейсов.
Тестирование безопасности
Уязвимости в отношении политик взлома, аутентификации и авторизации, безопасности данных, управления сеансами и других стандартов безопасности должны быть проверены как часть тестирования безопасности мобильных приложений. Приложения должны шифровать имя пользователя и пароли при аутентификации пользователя по сети.
Один из способов тестирования сценариев, связанных с безопасностью, заключается в маршрутизации данных вашего мобильного устройства через прокси-сервер, такой как OWASP Zed Attack Proxy, и поиске уязвимостей.
Пример тестовых сценариев —
-
Убедитесь, что приложение не работает с одинаковыми учетными данными на двух разных мобильных устройствах.
-
Убедитесь, что сеанс автоматически истекает, если он остается неактивным в течение более 15 минут.
Убедитесь, что приложение не работает с одинаковыми учетными данными на двух разных мобильных устройствах.
Убедитесь, что сеанс автоматически истекает, если он остается неактивным в течение более 15 минут.
Тестирование утечки памяти
Мобильные устройства имеют очень ограниченную память по сравнению с другими компьютерами, и мобильные операционные системы имеют поведение по умолчанию для завершения приложений, которые используют чрезмерную память и вызывают плохое взаимодействие с пользователем.
Тестирование памяти исключительно важно для мобильных приложений, чтобы гарантировать, что каждое приложение поддерживает оптимизированное использование памяти на протяжении всего пути пользователя. Рекомендуется проводить тестирование памяти на реальном целевом устройстве, поскольку архитектура системы отличается от эмулятора до реального устройства.
Пример тестовых сценариев —
-
Сделайте проверку доступности рейса в десять раз и запишите увеличение использования памяти для каждой проверки.
-
Продолжайте работу приложения в течение десяти минут и наблюдайте, остается ли использование памяти стабильным.
Сделайте проверку доступности рейса в десять раз и запишите увеличение использования памяти для каждой проверки.
Продолжайте работу приложения в течение десяти минут и наблюдайте, остается ли использование памяти стабильным.
Тестирование энергопотребления
Существует несколько типов батарей, используемых в различных мобильных устройствах (например, никель-кадмиевый / литий-ионный / никель-металлический гибрид). Хотя мы сосредоточены на тестировании энергопотребления, мы обязаны измерять состояние батареи на каждом уровне активности. Это даст нам лучшее понимание энергопотребления для отдельного приложения.
Тест энергопотребления может быть выполнен вручную; Также на рынке есть несколько бесплатных инструментов, таких как Trepn Profiler, Power Tutor и Nokia Energy Profiler. Это приложения, которые могут отображать энергопотребление в реальном времени на смартфоне или планшете.
Пример тестовых сценариев —
-
Используйте мобильное приложение для поиска доступности рейса и убедитесь, что энергопотребление остается минимальным.
-
Держите мобильное приложение в идеальном состоянии; убедитесь, что нет энергопотребления, когда нет активности для приложения.
Используйте мобильное приложение для поиска доступности рейса и убедитесь, что энергопотребление остается минимальным.
Держите мобильное приложение в идеальном состоянии; убедитесь, что нет энергопотребления, когда нет активности для приложения.
Тестирование прерываний
Приложение во время работы может столкнуться с несколькими перебоями, такими как входящие вызовы или отключение и восстановление покрытия сети. Это снова можно отличить для —
- Входящие и исходящие SMS и MMS
- Входящие и исходящие звонки
- Входящие уведомления
- Удаление батареи
- Вставка и удаление кабеля для передачи данных
Пример тестовых сценариев —
-
Убедитесь, что проверка доступности рейса приостановлена и возобновлена после получения входящего вызова.
-
Убедитесь, что пользователь может отклонить вызов во время использования приложения, а затем снова возобновить работу того же приложения.
Убедитесь, что проверка доступности рейса приостановлена и возобновлена после получения входящего вызова.
Убедитесь, что пользователь может отклонить вызов во время использования приложения, а затем снова возобновить работу того же приложения.
Юзабилити-тестирование
Юзабилити-тестирование оценивает приложение на основе следующих трех критериев для целевой аудитории:
-
Эффективность . Точность и полнота, с которой указанные пользователи могут достичь определенных целей в конкретной среде.
-
Эффективность — ресурсы, затраченные на точность и полноту достигнутых целей.
-
Удовлетворенность — комфорт и приемлемость рабочей системы для ее пользователей и других людей, пострадавших от ее использования.
Эффективность . Точность и полнота, с которой указанные пользователи могут достичь определенных целей в конкретной среде.
Эффективность — ресурсы, затраченные на точность и полноту достигнутых целей.
Удовлетворенность — комфорт и приемлемость рабочей системы для ее пользователей и других людей, пострадавших от ее использования.
Очень важно провести юзабилити-тестирование на месте с самого раннего этапа разработки приложения, и оно не должно проводиться только после завершения приложения. Юзабилити-тестирование требует активного участия пользователей, и результаты могут повлиять на дизайн приложения, что очень трудно изменить на более поздних этапах проекта.
Пример тестовых сценариев —
- Проверка доступности рейса должна быть на главной странице.
- Рекламная реклама не должна отображаться в середине контента.
Тестирование установки
Тестирование установки подтверждает, что процесс установки проходит без каких-либо проблем.
Пример тестовых сценариев —
- Убедитесь, что процесс установки проходит гладко и не займет много времени.
- Убедитесь, что установка прошла успешно через корпоративный магазин приложений.
Тестирование удаления
Основы тестирования деинсталляции могут быть сведены в одну строку: «Деинсталляция должна охватывать данные, связанные с приложением, всего за один раз».
Пример тестовых сценариев —
-
Убедитесь, что все файлы, связанные с приложением, успешно удалены после удаления.
-
Если это приложение, в котором хранятся мультимедийные файлы (например, Whatsapp или Facebook), сохраните файлы даже после удаления приложения.
Убедитесь, что все файлы, связанные с приложением, успешно удалены после удаления.
Если это приложение, в котором хранятся мультимедийные файлы (например, Whatsapp или Facebook), сохраните файлы даже после удаления приложения.
Тестирование обновлений
Мы должны быть очень осторожны с обновлениями мобильных приложений. Люди часто жалуются на то, что приложения не работают удовлетворительно после обновления. Поэтому очень важно, чтобы при тестировании обновлений мы определяли, что приложение будет работать так, как оно работало ранее. В двух словах, это ничего не должно сломать. Обновления мобильных приложений могут осуществляться двумя способами — автоматическим обновлением и ручным обновлением .
Пример тестовых сценариев —
- Убедитесь, что приложение успешно работает после автоматического обновления.
- Убедитесь, что процесс обновления отображается правильно.
Сертификационное тестирование
Чтобы получить сертификат соответствия, каждое мобильное устройство должно быть проверено на соответствие рекомендациям, установленным различными мобильными платформами.
Пример тестовых сценариев —
Убедитесь, что приложение придерживается политики телефонов iOS при установке на iPhone.
Убедитесь, что приложение придерживается политики телефонов Android при установке на Android.