Перейти к содержанию
Brawus
Рассчитать проект
Смартфоны на стенде проверки качества мобильного приложения
Артем — автор статьи
Артем
Mobile-разработчик

Тестирование мобильного приложения перед релизом: что проверить бизнесу

Приложение открывается, экраны похожи на макеты, основные кнопки работают — значит, можно выпускать? Не обязательно. Ошибка может проявиться после обновления старой версии, при переключении Wi-Fi на мобильную сеть или после возвращения из банковского приложения. На демонстрации эти условия часто не возникают, а у настоящих пользователей встречаются постоянно. Тестирование перед релизом помогает не доказать отсутствие любых ошибок, а снизить понятные риски и принять осознанное решение о запуске. Для бизнеса полезен не отчёт «проверено 300 экранов», а ответ на вопросы: какие сценарии надёжны, что ещё ограничено, что произойдёт при сбое и кто будет реагировать. Ниже — практический порядок проверки мобильного приложения.

Начните с того, ради чего пользователь устанавливает приложение

Составьте несколько сквозных сценариев на языке клиента. Не «проверить кнопку оплаты», а «выбрать услугу, оплатить её и увидеть подтверждённый заказ». Не «проверить календарь», а «найти свободное время, записаться, перенести занятие и убедиться, что новое время сохранено». Так обнаруживаются ошибки между экранами и системами, которые не видны при отдельной проверке элементов. Для каждого сценария определите результат, допустимое время ожидания и восстановление после неудачи. Что пользователь увидит, если товара уже нет? Можно ли продолжить оформление после закрытия приложения? Какие данные должны появиться у менеджера? Эти ответы становятся критериями приёмки, а не дополнительными пожеланиями после запуска. В кейсе автошколы РЕАЛ показаны обучение, запись на практику и оплата. На таком наборе удобно увидеть разницу между готовыми экранами и завершённым процессом. Проверять нужно не только мобильный клиент, но и связанные данные, ограничения расписания и изменение статусов. Такой подход закладывают ещё на этапе мобильной разработки.
Регистрация и выбор категории обучения в мобильном приложении РЕАЛ
Кейс РЕАЛ: регистрация — только начало сквозного сценария, который продолжается в обучении и записи.

Матрица устройств важнее случайного набора телефонов

Невозможно проверить каждую комбинацию модели, версии системы, разрешений и состояния сети. Поэтому устройства выбирают по аудитории и техническим рискам. Для уже работающего приложения помогают данные об используемых моделях и версиях ОС; для нового — целевой рынок, поддерживаемые платформы и ограничения продукта. В наборе полезны не только новый флагман, но и доступный Android с меньшим объёмом памяти, небольшой экран, устройство с крупным системным шрифтом. Если поддерживаются планшеты или складные устройства, они должны присутствовать в плане явно. Эмуляторы удобны для широкого набора конфигураций, но реальные телефоны нужны для проверки производительности, камеры, уведомлений и поведения в обычной среде. Список проверок можно сопоставить с рекомендациями Android по качеству приложений. Это хорошая отправная точка, но не готовое тестовое задание для любого бизнеса. В отчёте должны быть перечислены фактически проверенные устройства, сборки и ограничения охвата, чтобы «работает на Android» не означало один телефон разработчика.

Плохая сеть — штатный сценарий, а не исключение

Проверьте запуск без интернета, медленное соединение, обрыв во время запроса и восстановление связи. Затем переключите сеть, пока пользователь загружает файл, сохраняет профиль или оформляет заказ. Приложение должно объяснять состояние, не очищать заполненные поля без причины и не превращать временную ошибку в бесконечный индикатор загрузки. Особенно опасны действия с побочным эффектом. Сервер мог принять заказ, но клиент не получил ответ. Автоматический повтор не должен создавать второй заказ или повторное списание. Это задача совместной логики клиента и сервера: идентификаторов операций, проверки статуса и безопасных повторов. Подробнее такой обмен разобран в материале об интеграции с CRM и 1С. Не обещайте полноценную работу офлайн, если она не спроектирована. Честное сообщение о недоступности операции лучше ложного успеха. Если офлайн-режим есть, отдельно проверяют, какие данные сохранены локально, как разрешаются конфликты после подключения и что происходит с устаревшими ценами, расписанием или доступными остатками.

Сворачивание, перезапуск и обновление меняют условия

Во время оформления сверните приложение, откройте камеру, ответьте на звонок и вернитесь назад. Затем повторите сценарий после выгрузки процесса системой. Экран может выглядеть одинаково, но жизненный цикл приложения уже другой: временные данные исчезли, запрос завершился в фоне, токен доступа успел истечь. В Android сохранение пользовательского состояния зависит от того, какие данные нужно восстановить и почему был завершён процесс. Эти различия описаны в документации по сохранению состояния. На приёмке важно не название механизма, а результат: не потерялся ли черновик и не вернулся ли пользователь в неверный шаг процесса. Обновление проверяют поверх предыдущей рабочей версии, а не только чистой установкой. Нужны реальные для теста старые записи, настройки и локальный кэш. Отдельно смотрят выход из аккаунта, повторный вход и смену пользователя. Если после обновления требуется миграция данных, её сбой не должен оставлять человека с пустым экраном и единственным советом переустановить приложение.

Формы, разрешения и доступность проверяют руками

Введите длинное имя, вставьте телефон из буфера, используйте нестандартные символы, поменяйте системный язык и размер текста. Откройте клавиатуру на нижнем поле формы. Кнопка продолжения должна оставаться достижимой, ошибка — объяснять проблему, а введённые данные — сохраняться после исправления одного поля. Разрешения проверяют в нескольких состояниях: пользователь согласился, отказался, затем изменил решение в настройках. Камера, геолокация и уведомления не должны запрашиваться без понятной причины. Отказ от необязательной функции не должен блокировать остальное приложение. Если разрешение действительно необходимо, интерфейс объясняет зачем и предлагает следующий шаг. Для доступности проверьте подписи элементов в экранном дикторе, порядок фокуса, контраст и различимость состояний без опоры только на цвет. Кнопка может быть технически нажимаемой, но неудобной для человека с крупным шрифтом или ограниченной моторикой. Такие проблемы редко выявляются сравнением двух статичных макетов, поэтому ручная проверка остаётся важной даже при хорошем наборе автотестов.

Оплата, аккаунт и персональные данные требуют отдельного внимания

Для платежа пройдите успех, отказ, отмену, задержку ответа и возвращение из внешнего приложения. После каждого варианта сравните статус на устройстве и сервере. Экран «Оплачено» не должен появляться только потому, что пользователь вернулся по ссылке: подтверждение операции определяется доверенным серверным процессом и данными платёжной системы. В аккаунте проверьте истечение сессии, смену пароля, выход на общем устройстве и доступ к объектам другого пользователя. Скрытая кнопка не является защитой: сервер обязан проверять права независимо от интерфейса. Вложения, история заказов и сохранённые адреса не должны становиться доступными по простому изменению идентификатора запроса. Для системной проверки безопасности используют, например, OWASP MASVS. Он задаёт группы требований к мобильной безопасности, но ссылка на стандарт сама по себе не означает пройденный аудит. В практическом плане фиксируют конкретные проверки хранения токенов, сетевого обмена, журналов и зависимости от сторонних SDK. Тестовые секреты и диагностические данные не должны попасть в релиз.

Автотесты и ручная проверка не заменяют друг друга

Автоматизация хорошо подходит для повторяемой логики: расчётов, правил доступа, преобразования данных, основных API-контрактов. Несколько устойчивых сквозных тестов помогают быстро заметить, что регистрация или оформление заказа перестали работать после изменения соседнего модуля. Но хрупкий набор, который падает из-за любого движения элемента, создаёт шум вместо уверенности. Ручное исследование полезно там, где нужно оценить смысл и ощущения: понятность ошибки, поведение клавиатуры, неожиданную последовательность действий, визуальные наложения. Человек может заметить, что приложение предлагает записаться на уже прошедшее время, хотя каждый отдельный технический ответ формально успешен. В отчёте разделяйте выполненную проверку и найденный дефект. Для дефекта нужны шаги, устройство, версия сборки, ожидаемый и фактический результат, а при необходимости — видео и безопасные диагностические сведения. После исправления выполняют повторную проверку и небольшой регресс соседних сценариев. Отметка разработчика «исправлено» ещё не равна подтверждению на той сборке, которую получит пользователь.

Проверяйте релизную сборку и внешние зависимости

Отладочная сборка может использовать другую конфигурацию, тестовый сервер, более подробные журналы и иной режим оптимизации. Поэтому финальную приёмку проводят на сборке, максимально близкой к публикуемой, с проверенными адресами API, сертификатами и настройками внешних сервисов. Номер версии в отчёте должен однозначно указывать, что именно проверено. Для iOS TestFlight позволяет передавать бета-версию тестировщикам и собирать обратную связь до публикации. Для других каналов используют предусмотренные ими тестовые треки и механизмы распространения. Важно проверить не только установку, но и покупку в допустимой тестовой среде, вход через стороннего провайдера, push-уведомления и ссылки на конкретные экраны. Откройте политику конфиденциальности, поддержку и все внешние ссылки прямо из приложения. Убедитесь, что описание в магазине соответствует доступным функциям. Проверка магазином не заменяет собственный QA: её цель и охват отличаются от бизнес-приёмки. При изменении требований канала публикации их сверяют с актуальной официальной документацией перед отправкой.

Как принять решение о запуске

До финального созвона договоритесь, какие дефекты блокируют выпуск. Потеря данных, неверное списание, доступ к чужому аккаунту и невозможность завершить основную операцию обычно требуют исправления до запуска. Незначительная визуальная проблема может быть допустима, если известны её границы, назначен ответственный и согласован срок исправления. Не сводите решение к общему числу ошибок. Одна проблема, которая затрагивает оплату у части клиентов, может быть важнее двадцати небольших несоответствий. Обсудите охват, вероятность, ущерб и возможность обхода. Для каждого принятого риска оставьте понятную запись, а не устное «потом поправим». На примере записи в приложении РЕАЛ видно, зачем нужен такой разбор: неправильный отступ и потерянное занятие — принципиально разные дефекты. Изображение ниже показывает пользовательский сценарий из опубликованного кейса, а не отчёт о его тестировании. Для вашего продукта аналогичная карта помогает определить, какие проверки обязательны перед каждой версией.
Выбор инструктора, времени и запись на практическое занятие в приложении РЕАЛ
Кейс РЕАЛ: сквозной сценарий записи помогает сформулировать критерии приёмки.

После публикации проверка не заканчивается

Первые пользователи принесут сочетания условий, которых не было в лаборатории. Поэтому заранее настройте наблюдение за ошибками, зависаниями и завершением ключевых действий. Сравнивайте не только общий процент сбоев, но и версии приложения, устройства и конкретные сценарии. Рост ошибок после релиза должен иметь понятного получателя, а не оставаться графиком без владельца. Постепенное распространение версии может уменьшить масштаб проблемы, но не исправляет уже установленную сборку. Нужен план остановки дальнейшего распространения, отключения рискованной серверной функции, если это предусмотрено архитектурой, и выпуска исправления. Совместимость API со старой версией тоже важна: пользователи обновляются не одновременно. Передайте команде сопровождения продукта список известных ограничений, контакты ответственных и правила реакции. Хороший релиз — не обещание, что ошибок больше никогда не будет. Это проверенный основной путь пользователя, прозрачные оставшиеся риски и готовность быстро разобраться в реальной проблеме. Такой результат полезнее формального акта, подписанного потому, что все экраны однажды открылись.
Материал проверен и уточнён 7 сентября 2026 года. Обложка — редакционная иллюстрация; технические источники приведены в соответствующих разделах.

Обсудим проект

Расскажите о задаче — предложим формат работы и следующий шаг

или позвоните +7 965 123-07-96

Ответим в рабочее время

Специалист Brawus, с которым можно обсудить проект
Личный контакт От идеи до запуска
Готово

Заявка отправлена

Свяжемся с вами в рабочее время
Готово

Подписка оформлена

Будем присылать только важное