Чтобы настроить Tradefed с помощью Eclipse, выполните следующие действия.
Создайте отдельное рабочее пространство для разработки Trade Federation, не используйте повторно рабочее пространство, уже используемое для разработки Android-устройств.
При необходимости вы можете загрузить Eclipse IDE для разработчиков Java с сайта: eclipse.org/downloads
Создавать проекты
- Запустите make один раз из командной строки. Это позволит создать внешние библиотеки, зависящие от проектов ниже.
- Установите переменную classpath TRADEFED_ROOT в
Window > Preferences > Java > Build Path> Classpath Variables
и укажите ее на исходный корень tradefed. - Установите переменную пути TRADEFED_ROOT в
Window > Preferences > General > Workspace > Linked Resources
и укажите ее на исходный корень TradeFed. Используйте мастер «
File > Import...-> General > Existing Projects into workspace"
чтобы добавить эти проекты Java с открытым исходным кодом по следующим путям:prebuilts/misc/common/ddmlib\* tools/loganalysis tools/loganalysis/tests tools/tradefederation/core tools/tradefederation/core/tests tools/tradefederation/contrib tools/tradefederation/core/remote platform_testing/libraries/health/runners/longevity/host platform_testing/libraries/annotations platform_testing/libraries/health/composers/host
При желании, если вы хотите увидеть исходный код
ddmlib
, прикрепите исходный код из ветки несвязанных инструментов, например /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java .При желании, если вы также хотите загрузить проекты CTS-жгутов, импортируйте:
test/suite_harness/common/util test/suite_harness/common/host-side/util test/suite_harness/common/host-side/tradefed
Автоматический формат
ПРИМЕЧАНИЕ: Необходимые файлы находятся в development/ide/eclipse
в полном дереве исходного кода платформы. Поэтому вам нужно будет проверить ветку платформы, например android-latest-release
, чтобы получить эти файлы: /development/android16-release/ide/eclipse/
Используйте файлы настроек в Eclipse, чтобы автоматически задать форматировщику стиль Android. Чтобы сделать это в Studio:
- Перейдите в Окно > Настройки > Java > Стиль кода .
- В разделе Formatter импортируйте файл
android-formatting.xml
. - В разделе «Организовать» > «Импорт» импортируйте файл
android.importorder
.
Удалить конечные пробелы
Чтобы заставить Eclipse удалить все конечные пробелы:
- Перейдите в Окно > Настройки -> Java -> Редактор -> Сохранить действия .
- Затем Дополнительные действия -> Настроить -> Код > вкладка «Организация» -> Форматировщик .
- Установите флажок Удалить конечные пробелы .
- Нажмите «Применить» и «Закрыть» .
Проверить стиль кода
При отправке списка изменений будет запущен автоматический хук предварительной загрузки для проверки формата вашего кода: google-java-format
Это помогает отформатировать ваш код в соответствии с общим стандартом.
Отладка Eclipse
Если вы хотите запустить код TF через отладчик в Eclipse, рекомендуется сначала создать модульный тест для рассматриваемого кода, поскольку это будет самый простой и быстрый способ проверить функциональность.
Чтобы отладить модульный тест TF, просто щелкните по нему правой кнопкой мыши и выберите «Отладить как» > «Тест JUnit» .
Для отладки функционального теста TF следуйте инструкциям в предыдущем разделе по запуску функционального теста, но используйте меню «Запуск» > «Отладка конфигураций» .
Для отладки самой программы TF при запуске любой конфигурации следуйте инструкциям в предыдущем разделе по запуску функционального теста, но укажите аргументы командной строки для конфигурации, которую вы хотите запустить на шаге 4. Таким образом, для отладки конфигурации «инструмента» перейдите в меню «Выполнить» > «Конфигурация отладки» и установите на вкладке «Аргументы» в конфигурации отладки Eclipse значение -- package <package to run> instrument
.
Удаленная отладка с помощью Eclipse
Для удаленной отладки сеанса tradefed, запущенного из командной строки tradefed.sh
, выполните следующие действия:
- Запустите tradefed.sh с флагом отладки:
TF_DEBUG=1 tradefed.sh
- Подождите, пока не увидите следующее приглашение от JVM:
Listening for transport dt_socket at address: 10088
Это означает, что JVM ожидает подключения отладчика к порту10088
. - Подключитесь к удаленной отладке Eclipse из главного меню: выберите «Выполнить» > «Конфигурации отладки...» .
- В всплывающем диалоговом окне выберите Удаленное приложение Java в левом меню.
- Нажмите значок «Новая конфигурация запуска» на панели действий.
- Назовите конфигурацию по своему усмотрению и выберите tradefederation в качестве проекта.
- Заполните порт, используя адрес, указанный ранее.
- Перейдите на вкладку «Источник» и добавьте проекты tradefederation и google-tradefed в путь поиска источника .
- Нажмите «Отладка» , чтобы начать сеанс отладки.
Отладчик подключается к прослушивающему процессу JVM, и терминал, на котором запущен tradefed.sh
отображает приглашение tf>
.
Чтобы пройти по коду в режиме отладки, установите точку останова в Eclipse и вызовите команду Tradefed (т. е. run <test>
) в терминале. Чтобы отладить что-либо во время запуска TF, вы можете сначала установить точку останова, а затем подключить отладчик Eclipse.
СОВЕТ: Чтобы использовать альтернативный порт, добавьте TF_DEBUG_PORT=nnn
к команде на шаге 1 выше. Вы даже можете использовать это в производственной среде, если у вас есть загадочные ошибки зависания для расследования: измените suspend=y
на suspend=n
в tradefed.sh
и запустите с флагом отладки. JVM не будет ждать подключения отладчика, но вы можете сделать это в любое время, пока процесс все еще выполняется.
Удаленная отладка с использованием JDB
Чтобы использовать Java Debugger JDB, выполните действия, похожие на те, что используются в Eclipse:
- Запустите
tradefed.sh
с флагом отладки:TF_DEBUG=1 tradefed.sh
- Подождите, пока не увидите приглашение от JVM:
Listening for transport dt_socket at address: 10088
. Подключите
jdb
. Например из crout запустите:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Дождитесь соединения и приступайте к отладке! Запустите
man jdb
для получения дополнительной помощи.
Проверьте покрытие кода
- Установите плагин Eclemma .
- Перейдите в раздел «Справка» > «Установить новое программное обеспечение» и укажите мастеру ссылку: http://update.eclemma.org/
- После установки выберите опцию Coverage As > JUnit test, чтобы выполнить проверку покрытия кода.