Выполните следующие действия для настройки 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 harness, импортируйте:
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
. Например, из Croot выполните:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Дождитесь подключения и приступайте к отладке! Для получения дополнительной помощи выполните команду
man jdb
.
Проверьте покрытие кода
- Установите плагин Eclemma .
- Перейдите в раздел «Справка» > «Установить новое программное обеспечение» и укажите мастеру ссылку: http://update.eclemma.org/
- После установки выберите опцию Coverage As > JUnit test, чтобы выполнить проверку покрытия кода.