Что такое root и jailbreak и зачем это знать тестировщику?
Что проверяют
Зачем тестировщику привилегии на устройстве и понимаете ли вы требования безопасности к мобильному приложению. Хороший ответ показывает два угла сразу: root как ваш инструмент и root как объект проверки.
Как отвечать
Root на Android и jailbreak на iOS это снятие штатных ограничений: доступ ко всей файловой системе, к песочницам чужих приложений, возможность подменять системные компоненты и ставить приложения мимо магазина.
Как инструмент это нужно, чтобы заглянуть внутрь. На рутованном устройстве или эмуляторе видно содержимое песочницы: файлы базы, настройки, кэш. Так проверяется, не лежит ли токен или персональные данные в открытом виде, туда ли положены секреты. Там же ставится свой корневой сертификат для снятия трафика, а при проверке пиннинга применяется инструментирование процесса.
Как объект проверки это отдельная ветка требований. Банковские, медицинские, корпоративные приложения обязаны реагировать на скомпрометированное устройство: детект root и jailbreak, проверка целостности среды, отказ в работе или урезание функций. Отсюда тест-кейсы: срабатывает ли детект, понятное ли сообщение, не блокируется ли честный пользователь на кастомной прошивке, не падает ли приложение вместо аккуратного отказа.
Практический вывод для матрицы устройств: нужны и чистое устройство, и рутованное, причём эмулятор часто сам определяется как небезопасный, и это надо учитывать в регрессе.
Где спотыкаются
Считают тему экзотикой и не проверяют ветку отказа вовсе. В итоге детект выкатывается непроверенным и на релизе отрезает часть реальных пользователей.
Меряют производительность и стабильность на рутованном устройстве с кастомной прошивкой, а потом заводят баги, которые не воспроизводятся ни у кого другого. Такое устройство годится для исследования, но не для эталонных замеров.
Путают root с правами разработчика. Отладка по USB и adb это не root, режим разработчика не даёт доступа к чужим песочницам, а установка сборки мимо магазина по корпоративному профилю не равна jailbreak.