Настроить затмение

Выполните следующие шаги, чтобы настроить Tradefed с помощью Eclipse.

Для разработки Trade Federation создайте отдельное рабочее пространство и не используйте рабочее пространство, уже используемое для разработки приложений для Android-устройств.

При необходимости вы можете загрузить среду разработки Eclipse для Java-разработчиков по ссылке: eclipse.org/downloads

Создавайте проекты

  1. Запустите команду `make` один раз из командной строки. Это соберет внешние библиотеки, зависящие от указанных ниже проектов.
  2. Установите переменную classpath TRADEFED_ROOT в Window > Preferences > Java > Build Path> Classpath Variables и укажите в ней корневой каталог исходного кода TradeFed.
  3. Установите переменную пути TRADEFED_ROOT в Window > Preferences > General > Workspace > Linked Resources и укажите в ней корневой каталог источника TradeFed.
  4. Воспользуйтесь мастером « 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
    
  5. При желании, если вы хотите посмотреть исходный код ddmlib , прикрепите исходный код из ветки unbundled tools, например, /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java .

  6. При желании, если вы также хотите загрузить проекты жгутов проводов 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/android17-release/ide/eclipse/

Используйте файлы настроек в Eclipse, чтобы автоматически устанавливать форматирование в соответствии со стилем Android. Для этого в Studio:

  1. Перейдите в меню Window > Preferences > Java > Code Style .
  2. В разделе «Форматирование» импортируйте файл android-formatting.xml .
  3. В разделе «Организовать» > «Импорт» импортируйте файл android.importorder .

Удалите пробелы в конце строк.

Чтобы принудительно удалить все пробелы в конце строк кода в Eclipse:

  1. Перейдите в меню Window > Preferences -> Java -> Editor -> Save Actions .
  2. Затем Дополнительные действия -> Настройка -> Код > вкладка Организация -> Форматировщик .
  3. Установите флажок «Удалить пробелы в конце строк» .
  4. Нажмите «Применить» и «Закрыть» .

Проверьте стиль кода

При отправке списка изменений автоматически запускается механизм предварительной загрузки, проверяющий формат кода: google-java-format

Это помогает отформатировать ваш код в соответствии с общепринятыми стандартами.

Отладка Eclipse

Если вы хотите запустить код TensorFlow через отладчик в Eclipse, рекомендуется сначала создать модульный тест для соответствующего кода, поскольку это будет самый простой и быстрый способ проверить его функциональность.

Для отладки модульного теста TensorFlow просто щелкните по нему правой кнопкой мыши и выберите «Отладка как» > «JUnit-тест» .

Для отладки функционального теста TensorFlow следуйте инструкциям из предыдущего раздела по запуску функционального теста, но используйте меню «Запуск > Настройки отладки» .

Для отладки самой программы TF при запуске любой конфигурации следуйте инструкциям из предыдущего раздела по запуску функционального теста, но укажите аргументы командной строки для конфигурации, которую вы хотите запустить, на шаге 4. Таким образом, для отладки конфигурации 'instrument' перейдите в меню «Запуск» > «Конфигурация отладки» и установите на вкладке «Аргументы» в конфигурации отладки Eclipse значение -- package <package to run> instrument .

Удалённая отладка с помощью Eclipse

Выполните следующие действия для удаленной отладки сессии TradeFed, запущенной из командной строки tradefed.sh :

  1. Запустите tradefed.sh с флагом отладки: TF_DEBUG=1 tradefed.sh
  2. Подождите, пока JVM не увидит следующее сообщение: Listening for transport dt_socket at address: 10088 Это означает, что JVM ожидает подключения отладчика к порту 10088 .
  3. Подключитесь к удаленной отладке Eclipse из главного меню: выберите Run > Debug Configurations... .
  4. В появившемся диалоговом окне выберите «Удаленное Java-приложение» в меню слева.
  5. Нажмите на значок «Новая конфигурация запуска» на панели действий.
  6. Назовите конфигурацию по своему усмотрению и выберите проект tradefederation .
  7. Укажите порт, используя ранее предоставленный адрес.
  8. Перейдите на вкладку «Источник» и добавьте проекты tradefederation и google-tradefed в поле «Путь поиска источника» .
  9. Нажмите кнопку «Отладка» , чтобы начать сеанс отладки.

Отладчик подключается к прослушивающему процессу JVM, и в терминале, где запущен скрипт tradefed.sh отображается приглашение tf> .

Чтобы отлаживать код пошагово в режиме отладки, установите точку останова в Eclipse и выполните команду Tradefed (например, run <test> ) в терминале. Для отладки чего-либо во время запуска TF вы можете сначала установить точку останова, а затем подключить отладчик Eclipse.

СОВЕТ: Чтобы использовать альтернативный порт, добавьте TF_DEBUG_PORT=nnn к команде в шаге 1 выше. Вы даже можете использовать это в производственной среде, если у вас есть загадочные ошибки зависания, которые нужно исследовать: измените suspend=y на suspend=n в tradefed.sh и запустите с флагом отладки. JVM не будет ждать подключения отладчика, но вы можете сделать это в любое время, пока процесс еще запущен.

Удалённая отладка с использованием JDB

Для использования отладчика Java (JDB) выполните действия, аналогичные тем, что выполняются для Eclipse:

  1. Запустите tradefed.sh с флагом отладки: TF_DEBUG=1 tradefed.sh
  2. Подождите, пока не увидите приглашение от JVM: Listening for transport dt_socket at address: 10088 .
  3. Подключитесь jdb . Например, из корневого каталога выполните:

    jdb -attach 10088 \
        -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
    
  4. Дождитесь установления соединения и приступайте к отладке! Для получения дополнительной информации запустите man jdb .

Изучите покрытие кода.

  1. Установите плагин Eclemma .
  2. Перейдите в раздел «Справка» > «Установка нового программного обеспечения» и укажите мастеру установки путь: http://update.eclemma.org/
  3. После установки выберите опцию « Покрытие кода как > модульные тесты», чтобы выполнить анализ покрытия кода.