Работал ли ты с ADB (Android Debug Bridge)?

«Работал ли ты с ADB (Android Debug Bridge)?» — вопрос из категории Мобильное тестирование, который задают на 24% собеседований AQA / Automation. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, активно использовал ADB в проектах по мобильному тестированию Android-приложений. Это ключевой инструмент для отладки, управления устройствами/эмуляторами и автоматизации некоторых задач.

Основные сценарии применения в моей работе:

  • Управление устройствами: Установка (adb install) и удаление (adb uninstall) сборок приложения, получение списка подключенных устройств (adb devices).
  • Сбор логов: Запись логов приложения (adb logcat) в файл для анализа падений или ошибок во время прогона автотестов.
  • Эмуляция действий и ввода данных: Например, для очистки данных приложения или симуляции нажатий кнопок между тестами.
  • Снятие скриншотов и видео: Быстрое сохранение скриншотов (adb shell screencap) или записи экрана с устройства для баг-репортов.

Примеры команд, которые я использовал в скриптах или вручную:

# 1. Установка тестовой сборки (debug APK)
adb install -t app-debug.apk

# 2. Очистка данных приложения перед тестом (сброс к чистому состоянию)
adb shell pm clear com.example.myapp

# 3. Эмуляция нажатия кнопки "Назад"
adb shell input keyevent KEYCODE_BACK

# 4. Получение логов с фильтрацией по тегу приложения и уровню ERROR
adb logcat -d MyAppTag:E *:S > app_error.log

ADB также интегрируется в инструменты автоматизации (например, Appium) и является основой для многих скриптов по подготовке тестового окружения.