8. Тестирование жестов и сенсоров в мобильных приложениях
Братишка, сегодня разберём одну из самых хардкорных тем в мобильном тестировании — жесты и сенсоры. Если кнопки можно просто понажимать, то тут уже начинается магия: свайпы, мультитач, акселерометр, гироскоп, приближение... И всё это нужно тестить, чтобы юзеры не страдали от глюков.
🤔 Почему это важно?
📱 Мобильные приложения ≠ десктоп. Тут интерфейс взаимодействует не только с тачем, но и с железом: наклоны, встряхивания, приближения, жесты пальцами.
🔄 Нестабильное поведение. Разные телефоны могут интерпретировать одно и то же движение по-разному.
🎮 Игры и AR/VR. Тут вообще без сенсоров и жестов никуда.
📌 Тестирование жестов
1 Основные жесты
📌 Как тестить?
✅ Проверить, работают ли жесты во всех нужных местах.
✅ Убедиться, что жест не конфликтует с другими (например, свайп внутри скроллбара).
✅ Проверить чувствительность (иногда приходится сильно давить, иногда — наоборот).
✅ Разные сценарии — один палец, два пальца, быстрый свайп, медленный свайп.
Автоматизация: Appium + MultiTouch
📌 Эмуляторы и ручное тестирование
- Android Studio Emulator — умеет эмулировать свайпы, пинч, масштаб.
- Xcode Simulator (iOS) — можно тестить базовые жесты.
- Физическое устройство — потому что эмуляторы не всегда ведут себя как реальные телефоны.
📌 Тестирование сенсоров
2 Акселерометр и гироскоп (наклоны, встряхивания, ориентация экрана)
📌 Как тестить?
✅ Переключение экрана (Portrait / Landscape).
✅ Реакция на встряхивание (например, отмена действия).
✅ Игры и AR — работают ли повороты?
Ручное тестирование
- Android Studio → Extended Controls → Sensors (можно эмулировать наклоны).
- Xcode Simulator → Features → Shake Gesture (встряхивание).
Appium: тест смены ориентации
3 Датчик приближения (Proximity Sensor)
Используется для отключения экрана во время звонка или взаимодействия с приложениями, требующими приватности (банкинг).
📌 Как тестить?
✅ Закрыть датчик рукой (или использовать инструмент эмуляции).
✅ Проверить, включается ли экран обратно после убирания руки.
✅ Тестить на реальных девайсах, т.к. эмуляция бывает кривоватой.
Эмуляция на Android
4 Датчик освещённости (Light Sensor)
Используется для автояркости экрана и ночных режимов.
📌 Как тестить?
✅ Проверить адаптацию яркости в темноте и при ярком свете.
✅ Эмулировать разные уровни освещения через специальные инструменты (или просто фонарик 🤷♂).
5 GPS и геолокация
Приложения с картами, доставками, геометками (Instagram, Uber).
📌 Как тестить?
✅ Менять координаты и проверять реакцию приложения.
✅ Подставлять фейковые локации через ADB / Xcode.
✅ Отключать GPS и смотреть, как ведёт себя приложение.
Эмуляция локации на Android
Эмуляция локации в Xcode
- Debug → Location → Custom Location.
📊 Логирование и мониторинг жестов и сенсоров
Чтобы понять, какие жесты чаще всего используют юзеры, нужно логировать события.
📌 Firebase Analytics (Android)
📌 Heap / UXCam – записывают видео сессий юзеров.
🛠 Инструменты для тестирования жестов и сенсоров
📌 Итоги
🔥 Жесты и сенсоры — это сложная, но важная часть мобильного UX.
📡 Тестируем не только клики, но и свайпы, наклоны, встряхивания.
🛠 Лучшие инструменты: Appium, Android Studio, Xcode, Firebase Analytics.
🚀 Без тестов юзеры будут страдать, а мы – получать багрепорты.