Зачем тестировать до магазинов
Ошибки, найденные до публикации, исправляются за часы. После публикации исправление требует новой версии, повторной проверки магазином и ожидания, пока пользователи обновятся. За это время вы теряете клиентов, а приложение собирает плохие оценки.
Магазины тоже проверяют приложения, и сбои при запуске, пустые экраны или ошибки в оплате становятся причиной отказа. Поэтому тестирование — это не формальность, а защита сроков публикации.
Виды проверок
Функциональная
Каждый экран и каждая кнопка работают так, как описано в задании. Включая неправильные сценарии: пустые поля, отмена, возврат назад.
На устройствах
Проверка на разных моделях, размерах экрана и версиях iOS и Android, включая старые и бюджетные телефоны.
Связь и сбои
Приложение ведёт себя разумно при медленном интернете, обрывах связи и повторных нажатиях.
Оплата
Успешный платёж, отказ, закрытие страницы банка, возврат. Проверяется, что статус заказа обновляется корректно.
Уведомления
Приходят вовремя, ведут на правильный экран, их можно отключить.
Безопасность и данные
Пароли и токены хранятся безопасно, данные других пользователей недоступны, запросы к серверу защищены.
Что проверить на своём телефоне при приёмке
- Установка и первый запуск, регистрация и вход
- Главный сценарий от начала до конца: заказ, запись, оплата
- Работа после сворачивания и возврата в приложение
- Поведение при звонке, отключённом интернете и смене сети
- Тексты, цены, изображения и ссылки
- Тёмная тема и увеличенный размер шрифта, если вы их поддерживаете
- Запросы разрешений: приложение просит только нужное и объясняет зачем
- Удаление аккаунта, если приложение его создаёт
Как распределены роли
- Разработчики
- Пишут автоматические проверки самой логики и ежедневно запускают приложение на тестовом сервере.
- Тестировщик
- Проходит приложение как пользователь, фиксирует ошибки с шагами воспроизведения и проверяет исправления.
- Заказчик
- Принимает результат по списку сценариев, договорённому заранее, и подтверждает готовность к публикации.
Закрытое бета-тестирование
Перед публикацией дайте приложение десятку реальных клиентов или сотрудников через TestFlight и закрытое тестирование Google Play. Живые пользователи находят то, что не придёт в голову команде.
Как описывать ошибки
Хорошая заявка на исправление отвечает на четыре вопроса: что вы сделали, что ожидали, что получили и на каком устройстве. Снимок экрана или запись помогают найти проблему в разы быстрее, чем фраза «не работает».
Разделяйте ошибки по серьёзности: блокирующие мешают главному сценарию, важные раздражают, но не мешают, мелкие касаются оформления. Блокирующие закрываются до выпуска, остальные можно запланировать на следующую версию.
Автоматические тесты и повторные проверки
Автоматические тесты запускаются при каждом изменении кода и проверяют ключевые функции без участия человека. Они не заменяют ручную проверку, но защищают от ситуации, когда исправление одной ошибки ломает другое место. Особенно важны тесты на расчёт цен, оплату и права доступа.
Перед каждым обновлением повторяйте короткий набор проверок главных сценариев на реальных устройствах. Это занимает около часа, зато позволяет не получать после выпуска волну жалоб на то, что приложение перестало открываться на какой-то версии системы.