iOS testing для QA
iOS стабильнее по парку устройств, но имеет свои риски: строгий lifecycle, permissions, Keychain, APNs, TestFlight, App Store review, ограниченный доступ к файловой системе и особенности разных версий iOS.
Что важно понять
- Permissions: camera, photos, location, notifications, tracking transparency.
- Lifecycle: cold start, background, terminate, restore, memory pressure.
- Keychain и сохранение сессии после reinstall или update.
- Push, universal links, in-app purchases, TestFlight vs App Store build.
Рабочий порядок
- Проверьте сценарий на актуальной и минимально поддерживаемой iOS.
- Отдельно проверьте denied / limited / allowed состояния permissions.
- Сравните поведение TestFlight и release-конфигурации, если оно зависит от окружения.
- Фиксируйте device model, iOS version, build number и provisioning context.
Что отдавать команде
- iOS-specific checklist.
- Видео дефекта и sysdiagnose/logs, если команда их запрашивает.
- Список проверок перед App Store submission.
Частые провалы
- Забывать limited photo access.
- Не проверять reinstall/update и сохранение keychain-состояний.
- Считать TestFlight полностью равным App Store окружению.
Практика
Проверьте сценарий авторизации после update, logout, reinstall и удаления данных приложения. Отдельно отметьте, что сохраняется в keychain.