Как отлаживать сценарии UIAutomator с помощью Eclipse

Из того, что я вижу, когда скрипт UIAutomator компилируется в файл jar и запускается с помощью команды оболочки adb. Я вижу, что есть параметр командной строки -e debug, который ожидает подключения отладчика перед запуском, но как мне подключить его к отладчику из Eclipse, чтобы я мог отлаживать свой скрипт UI Automator?


person neodymium    schedule 24.02.2014    source источник


Ответы (1)


Я разобрался. Процесс немного затянут, но работает!

Ключом к этому является понимание того, как использовать Dalvik Debug Monitor Server (DDMS) и понимание удаленной отладки с помощью Java и Eclipse. Вкратце выполните следующие действия:

  1. Настройте перспективу DDMS в Eclipse, нажав Window > Open Perspective > Other... > DDMS. Вы должны увидеть свое устройство в списке на вкладке «Устройства», если у вас запущен эмулятор/устройство.
  2. Настройте конфигурацию удаленной отладки. Для этого перейдите на Run > Debug Configurations...
  3. Щелкните правой кнопкой мыши удаленное приложение Java на левой панели и нажмите «Создать», чтобы создать новую конфигурацию.
  4. В свойствах подключения используйте localhost и порт 8700. В моем случае я использую эмулятор, работающий на моей локальной машине разработки. Порт по умолчанию для DDMS — 8700. Если это не так для вашей установки, вы можете проверить, какой порт должен быть с точки зрения DDMS, после запуска сценария UI Automator в режиме отладки. (См. шаги 7–9 ниже) Удаленное приложение Java
  5. Убедитесь, что выбранный вами проект является проектом автоматизации пользовательского интерфейса, который вы будете запускать. На вкладке «Источник» вы также можете добавить проект автоматизации пользовательского интерфейса. (Не уверен, что это обязательно или нет)
  6. Нажмите «Применить», а затем закройте.
  7. #P3# <блочная цитата> #P4#
  8. Затем он скажет:

    Отправка чанка WAIT

  9. В Eclipse перейдите в перспективу DDMS. На вкладке «Устройства» вы должны увидеть процесс с маленьким красным символом ошибки. Рядом с ним будет знак вопроса. В последнем столбце таблицы будет два номера порта, например 8602/8700. Порт 8700 — это тот, к которому вы будете подключать сеанс удаленной отладки. Это то, что должно быть настроено на шаге 4 выше.

  10. Теперь вы готовы начать удаленную отладку. Установите точку останова где-нибудь в скрипте UI Automator. Затем выполните отладку, перейдя к Run > Debug Configurations..., а затем выберите конфигурацию удаленного приложения Java, которую вы создали ранее, и нажмите «Отладка».

Если все прошло хорошо, вы сможете отлаживать свой скрипт UI Automator!

person neodymium    schedule 24.02.2014
comment
Я выполнил эквивалент этого в Android Studio... но скрипт не остановился в точке останова - person Tim Boland; 13.12.2014
comment
Вы пробовали использовать устройство с Android M (SDK уровня 23)? Я пытался, но это не сработало. Не могли бы вы помочь? - person jupi; 07.10.2015
comment
это решение не работает с Android M, пожалуйста, предложите мне альтернативное решение для Android M? - person Lavekush Agrawal; 06.01.2016