Частый вопрос от наших учеников: как тестировать мобильные приложения? В этом руководстве мы предоставляем образцы сценария тестирования / тестовых случаев для тестирования мобильного приложения.
Вы можете выполнить некоторые или все тестовые примеры в зависимости от ваших требований к мобильному тестированию. Сценарии тестирования организованы на основе типов мобильного тестирования.
- Сценарии функционального тестирования
- Тестирование производительности
- Сценарии тестирования безопасности
- Сценарии тестирования юзабилити
- Сценарии тестирования совместимости
- Сценарии тестирования восстанавливаемости
- Важный контрольный список
Функциональное тестирование мобильного приложения
Функциональное тестирование мобильных приложений является процесс тестирования функциональных возможностей мобильных приложений , таких как взаимодействие с пользователем, а также тестирование операций , которые пользователи могут выполнять. Основная цель функционального тестирования мобильного приложения - обеспечить качество, соответствие заданным ожиданиям, снижение риска или ошибок и удовлетворенность клиентов.
Различные факторы, которые имеют значение для функционального тестирования:
- Тип приложения, основанный на использовании бизнес-функций (банковское дело, игры, социальные сети или бизнес)
- Тип целевой аудитории (потребитель, предприятие, образование)
- Канал распространения, который используется для распространения приложения (например, Apple App Store, Google play, прямое распространение)
Наиболее фундаментальные тестовые сценарии при функциональном тестировании можно рассматривать как:
- Чтобы проверить, все ли обязательные обязательные поля работают должным образом.
- Проверить, что обязательные поля отображаются на экране отличным образом от необязательных полей.
- Чтобы проверить, работает ли приложение в соответствии с требованиями при каждом запуске / остановке приложения.
- Чтобы проверить, переходит ли приложение в свернутый режим при входящем телефонном звонке. Чтобы проверить то же самое, нам нужно использовать второй телефон, чтобы позвонить на устройство.
- Чтобы проверить, может ли телефон хранить, обрабатывать и получать SMS при каждом запуске приложения. Чтобы проверить то же самое, нам нужно использовать второй телефон для отправки sms на устройство, которое тестируется и на котором в настоящее время работает тестируемое приложение.
- Проверить, что устройство может выполнять требуемые требования многозадачности всякий раз, когда это необходимо.
- Подтвердить, что приложение поддерживает необходимые параметры социальных сетей, такие как совместное использование, публикация и навигация и т. Д.
- Чтобы убедиться, что приложение поддерживает любые транзакции платежного шлюза, такие как Visa, Mastercard, Paypal и т. Д., В соответствии с требованиями приложения.
- Для проверки того, что сценарии прокрутки страниц включены в приложении по мере необходимости.
- Проверить, что навигация между соответствующими модулями в приложении соответствует требованиям.
- Чтобы проверить, что ошибки усечения абсолютно допустимы.
- Чтобы убедиться, что пользователь получает соответствующее сообщение об ошибке, например «Ошибка сети. Пожалуйста, попробуйте через некоторое время »всякий раз, когда возникает какая-либо сетевая ошибка.
- Для проверки того, что установленное приложение позволяет другим приложениям работать удовлетворительно и не занимает память других приложений.
- Чтобы убедиться, что приложение возобновляется с последней операции в случае аппаратной перезагрузки или сбоя системы.
- Чтобы проверить, может ли установка приложения быть выполнена гладко, при условии, что у пользователя есть необходимые ресурсы, и это не приведет к каким-либо значительным ошибкам.
- Проверить, что приложение выполняет функцию автоматического запуска в соответствии с требованиями.
- Чтобы проверить, работает ли приложение в соответствии с требованиями во всех версиях Mobile, то есть 2g, 3g и 4g.
- Для выполнения регрессионного тестирования для обнаружения новых ошибок программного обеспечения в существующих областях системы после внесения в них изменений. Также повторно запустите ранее выполненные тесты, чтобы определить, что поведение программы не изменилось из-за изменений.
- Чтобы проверить, предоставляет ли приложение доступное руководство пользователя для тех, кто не знаком с приложением
Сценарии тестирования производительности
Основная цель этого типа тестирования - убедиться, что приложение работает приемлемо при определенных требованиях к производительности, таких как доступ огромного количества пользователей или удаление ключевой части инфраструктуры, такой как сервер базы данных.
Общие сценарии тестирования для тестирования производительности в мобильном приложении:
- Чтобы определить, работает ли приложение в соответствии с требованиями при различных условиях нагрузки.
- Чтобы определить, может ли текущее покрытие сети поддерживать приложение на пиковом, среднем и минимальном уровнях пользователей.
- Чтобы определить, обеспечивает ли существующая конфигурация клиент-сервер необходимый оптимальный уровень производительности.
- Выявление различных узких мест в приложениях и инфраструктуре, которые не позволяют приложению работать на требуемых уровнях приемлемости.
- Проверить, соответствует ли время отклика приложения требованиям.
- Для оценки продукта и / или оборудования, чтобы определить, может ли оно справиться с прогнозируемыми объемами нагрузки.
- Чтобы оценить, может ли время автономной работы поддерживать работу приложения при прогнозируемых объемах нагрузки.
- Для проверки производительности приложения при изменении сети на WIFI с 2G / 3G или наоборот.
- Для проверки каждого из требуемых циклов ЦП проводится оптимизация.
- Чтобы убедиться, что расход заряда батареи, утечки памяти, ресурсы, такие как GPS, производительность камеры, находятся в пределах требуемых рекомендаций.
- Для проверки долговечности приложения при высокой пользовательской нагрузке.
- Для проверки производительности сети при перемещении с устройством.
- Для проверки производительности приложения, когда требуются только прерывистые фазы подключения.
Сценарии тестирования безопасности
Основная цель тестирования безопасности - убедиться, что требования приложения к безопасности данных и сети соблюдаются в соответствии с рекомендациями.
Ниже приведены наиболее важные области для проверки безопасности мобильных приложений.
- Проверить, что приложение способно противостоять любой атаке методом грубой силы, которая представляет собой автоматизированный процесс проб и ошибок, используемый для угадывания имени пользователя, пароля или номера кредитной карты.
- Чтобы проверить, не разрешает ли приложение злоумышленнику получить доступ к конфиденциальному контенту или функциям без надлежащей аутентификации.
- Для проверки того, что приложение имеет надежную систему защиты паролем и не позволяет злоумышленнику получить, изменить или восстановить пароль другого пользователя.
- Чтобы убедиться, что приложение не страдает от недостаточного истечения срока действия сеанса.
- Выявить динамические зависимости и принять меры для предотвращения доступа злоумышленников к этим уязвимостям.
- Для предотвращения атак, связанных с SQL-инъекциями.
- Для выявления и восстановления любых сценариев неуправляемого кода.
- Чтобы убедиться, что сертификаты проверены, реализует ли приложение закрепление сертификатов или нет.
- Для защиты приложения и сети от атак типа «отказ в обслуживании».
- Анализировать требования к хранению и проверке данных.
- Чтобы включить управление сеансом для предотвращения доступа неавторизованных пользователей к нежелательной информации.
- Чтобы проверить, не нарушен ли какой-либо криптографический код, и убедиться, что он исправлен.
- Чтобы убедиться, что реализация бизнес-логики защищена и не уязвима для атак извне.
- Чтобы проанализировать взаимодействие файловой системы, определите все уязвимости и устраните эти проблемы.
- Для проверки обработчиков протокола, например, при попытке перенастроить целевую страницу по умолчанию для приложения с помощью вредоносного iframe.
- Для защиты от вредоносных инъекций на стороне клиента.
- Для защиты от вредоносных инъекций во время выполнения.
- Чтобы исследовать кеширование файлов и предотвратить любые злонамеренные действия.
- Для предотвращения небезопасного хранения данных в кеше клавиатуры приложений.
- Для исследования файлов cookie и предотвращения любых злонамеренных действий со стороны файлов cookie.
- Проводить регулярные аудиты для анализа защиты данных.
- Исследуйте файлы, созданные пользователем, и предотвращайте любые злонамеренные действия из файлов, созданных пользователем.
- Для предотвращения переполнения буфера и случаев повреждения памяти.
- Для анализа различных потоков данных и предотвращения любых уязвимостей от них.
Сценарии тестирования юзабилити
Процесс юзабилити-тестирования мобильного приложения выполняется для того, чтобы получить быстрое и легкое пошаговое приложение с меньшей функциональностью, чем медленное и сложное приложение с множеством функций. Основная цель - обеспечить, чтобы у нас был простой в использовании, интуитивно понятный и аналогичный принятым в отрасли интерфейсам, которые широко используются.
- Для того, чтобы пуговицы имели необходимый размер и подходили для больших пальцев.
- Убедитесь, что кнопки расположены в одном разделе экрана, чтобы не запутать конечных пользователей.
- Чтобы значки выглядели естественно и соответствовали приложению.
- Чтобы кнопки, выполняющие одинаковые функции, также имели одинаковый цвет.
- Чтобы гарантировать, что проверка для касания средств увеличения и уменьшения должна быть включена.
- Чтобы гарантировать, что ввод с клавиатуры можно свести к минимуму соответствующим образом.
- Чтобы гарантировать, что приложение предоставляет метод для возврата или отмены действия при прикосновении к неправильному элементу в течение приемлемого периода времени.
- Чтобы контекстное меню не было перегружено, потому что его нужно использовать быстро.
- Чтобы текст оставался простым и понятным, чтобы его могли видеть пользователи.
- Чтобы конечные пользователи могли читать короткие предложения и абзацы.
- Чтобы размер шрифта был достаточно большим, чтобы его можно было читать, а не слишком большим или слишком маленьким.
- Для проверки приложение запрашивает пользователя всякий раз, когда пользователь начинает загрузку большого объема данных, что может не способствовать производительности приложения.
- Чтобы проверить, что закрытие приложения выполняется из разных состояний, и проверить, открывается ли оно повторно в том же состоянии.
- Чтобы гарантировать, что все строки будут преобразованы в соответствующие языки, когда доступны средства языкового перевода.
- Чтобы гарантировать, что элементы приложения всегда синхронизируются в соответствии с действиями пользователя.
- Чтобы гарантировать, что конечному пользователю предоставлено руководство пользователя, которое помогает конечному пользователю понять и работать с приложением, который может быть не знаком с процедурами приложения
Тестирование удобства использования обычно выполняется пользователями вручную, поскольку только люди могут понять чувствительность и комфортность других пользователей.
Сценарии тестирования совместимости
Тестирование совместимости на мобильных устройствах выполняется, чтобы убедиться, что, поскольку мобильные устройства имеют разный размер, разрешение, экран, версию и оборудование, приложение должно быть протестировано на всех устройствах, чтобы убедиться, что приложение работает должным образом.
Ниже приведены наиболее важные области для тестирования совместимости.
- Чтобы убедиться, что пользовательский интерфейс приложения соответствует размеру экрана устройства, никакой текст / элемент управления не являются частично невидимыми или недоступными.
- Чтобы текст был доступен для чтения всем пользователям приложения.
- Чтобы гарантировать, что функция вызова / тревоги включена при каждом запуске приложения. Приложение сворачивается или приостанавливается в случае вызова, а затем, когда вызов останавливается, приложение возобновляется.
Сценарии тестирования восстанавливаемости
- Восстановление после сбоя и прерывания транзакции
- Проверка эффективной ситуации восстановления приложений после непредвиденных сценариев прерывания / сбоя.
- Проверка того, как приложение обрабатывает транзакцию во время сбоя питания (например, разряд батареи или внезапное отключение устройства вручную)
- При проверке процесса, при котором соединение приостановлено, системе необходимо повторно установить для восстановления данных, непосредственно затронутых приостановленным соединением.
Важный контрольный список
- Тестирование установки (можно ли установить приложение в разумные сроки и с требуемым критерием)
- Тестирование деинсталляции (можно ли удалить приложение в разумные сроки и с соблюдением требуемых критериев)
- Сетевые тестовые примеры (проверка того, работает ли сеть при требуемой нагрузке или нет, способна ли сеть поддерживать все необходимые приложения во время процедур тестирования)
- Проверить несопоставленные ключи
- Проверьте заставку приложения
- Продолжение ввода с клавиатуры во время прерываний и в других случаях, например, при проблемах с сетью
- Способы выхода из приложения
- Эффект зарядного устройства при работе приложения в фоновом режиме
- Низкий уровень заряда батареи и высокая производительность
- Удаление батареи во время выполнения приложения
- Расход батареи приложением
- Проверить побочные эффекты приложения