«Мы протестировали — всё работает» — фраза, после которой пользователи находят баг в первые 5 минут. Тестирование мобильного приложения — это не «покликать по экранам». Это системный процесс проверки, который определяет, получит ли пользователь работающий продукт или разочарование.
Виды тестирования
Функциональное
Проверка, что каждая функция работает как задумано. Каждая кнопка, каждый экран, каждый сценарий. Тестировщик проходит все пользовательские пути и проверяет результат на соответствие ТЗ.
Регрессионное
Проверка, что новый код не сломал старый. После каждого обновления нужно убедиться, что ранее работавшие функции продолжают работать. Чем больше приложение — тем важнее регрессионное тестирование.
Тестирование совместимости
Проверка на разных устройствах и версиях ОС. iPhone SE и iPhone 15 Pro Max, Android 11 и Android 14, Samsung и Xiaomi. Экраны разного размера, разная производительность, разные особенности.
Минимальный набор для тестирования:
- 2–3 модели iPhone (разных поколений)
- 3–4 модели Android (Samsung, Xiaomi, Google Pixel — разных ценовых сегментов)
- 2 версии iOS и 2 версии Android
Тестирование производительности
Как быстро загружаются экраны? Как приложение работает при медленном интернете? Что происходит при переключении между Wi-Fi и мобильной сетью? Пользователь не должен ждать дольше 2–3 секунд.
Тестирование UX
Не «работает ли?», а «удобно ли?». Понятна ли навигация? Очевидно ли, куда нажать? Не теряется ли пользователь? Лучше всего проверяется реальными людьми, которые видят приложение впервые.
Тестирование безопасности
Защищены ли данные пользователей? Правильно ли работает авторизация? Нельзя ли получить доступ к чужим данным? Для приложений с оплатой и персональными данными — обязательно.
Тестирование граничных случаев
Что если пользователь вводит 500 символов в поле «Имя»? Что если пропал интернет во время оплаты? Что если два пользователя одновременно заказали последний товар? Граничные случаи — самый частый источник багов в продакшене.
Процесс тестирования
- Составление тест-кейсов — на основе ТЗ и пользовательских сценариев
- Тестирование по кейсам — систематическая проверка каждого сценария
- Логирование багов — описание, шаги воспроизведения, приоритет
- Исправление разработчиком
- Повторная проверка (ретест) — баг действительно исправлен?
- Регрессия — исправление не сломало ничего другого?
Сколько стоит и сколько длится
Тестирование занимает 10–15% бюджета и 15–20% времени проекта. Для MVP среднего приложения: 1–2 недели финального тестирования + постоянное тестирование в процессе разработки.
Экономия на тестировании — ложная экономия. Баг, найденный QA-инженером, стоит 1 час на исправление. Тот же баг, найденный пользователем в продакшене, стоит: негативный отзыв + потерянный клиент + экстренное исправление + обновление в сторе.
Итоги
Тестирование — не финальный штрих, а неотъемлемая часть разработки. Функциональное, регрессионное, на совместимость, на производительность — каждый вид закрывает свой класс рисков. Приложение, прошедшее полноценное QA, запускается стабильно и получает хорошие отзывы с первого дня.
Планируете запуск мобильного приложения? Обсудим — наш процесс включает тестирование на каждом этапе, а не только перед релизом.