“У меня всё работает”
- говорит разработчик, держа в руках свой iPhone 15 Pro.
И в этот момент где-то на Android 9 с плохим интернетом приложение уже падает.
🧠 Главная проблема мобильного тестирования
В вебе ты тестируешь приложение.
В мобилке ты тестируешь:
- устройство
- ОС
- сеть
- батарею
- память
- уведомления
- фоновые процессы
И только потом само приложение.
🔍 Где живут настоящие баги
1️⃣ Сеть (самый недооценённый фактор)
Пользователь не сидит на идеальном Wi-Fi.
Он:
- едет в метро
- переключается между LTE и Wi-Fi
- теряет сеть
- ловит слабый сигнал
И в этот момент:
- запрос зависает
- дублируется
- отваливается silently
👉 Вопрос к вам:
“Что делает приложение, когда сеть пропала на 2 секунды?”
2️⃣ Фон и жизненный цикл приложения
Пользователь:
- свернул приложение
- открыл другое
- вернулся через 5 минут
А ты получаешь:
- потерянное состояние
- сломанный экран
- устаревшие данные
👉 Классический баг: API уже ответил, а UI не обновился после возврата
3️⃣ Память и слабые устройства
Не все сидят на флагманах.
На слабых устройствах:
- приложение выгружается из памяти
- экран пересоздаётся
- данные теряются
👉 Вопрос к вам: “Что произойдёт, если ОС убьёт приложение в фоне?”
4️⃣ Версии ОС
Android 9 ≠ Android 14
iOS 15 ≠ iOS 17
Различия:
- permissions
- background tasks
- push-уведомления
- поведение WebView
Один и тот же код может работать по-разному.
5️⃣ Уведомления (push)
Самая коварная зона.
Проблемы:
- приходит с задержкой
- приходит дважды
- приходит, когда не должен
- открывает не тот экран
А ещё пользователь может открыть приложение не из него.
⚠️ Самая большая иллюзия QA в мобилке
“Я протестировал на своём устройстве”
Это почти ничего не значит.
Потому что мобильное приложение это комбинация условий, а не один сценарий.
🎯Как мыслит сильный мобильный QA
Он не тестирует “экран”. Он тестирует: смену сети, смену состояния приложения, смену устройства, деградацию среды.
Он задаёт вопросы:
- что будет, если пользователь свернёт приложение в середине операции?
- что будет при плохом интернете?
- что будет при возврате через время?
💬 Из практики
Самые неприятные баги в мобилке: не падают, не дают ошибок и не воспроизводятся стабильно. Они появляются толькона слабом устройстве/при плохой сети/через 5 минут после действия (или бездействия).
Тестировщик, который умеет весь этот хаос моделировать, ловит баги, которые никто другой даже не увидит)
📓 Заметки тестировщика