Configurar o Eclipse

Siga estas etapas para configurar o Tradefed usando o Eclipse.

Crie um espaço de trabalho separado para desenvolver a Trade Federation, não reutilize um espaço de trabalho já usado no desenvolvimento de dispositivos Android.

Se necessário, faça o download do ambiente de desenvolvimento integrado do Eclipse para desenvolvedores Java em: eclipse.org/downloads (em inglês)

Criar projetos

  1. Execute o make uma vez na linha de comando. Isso vai criar bibliotecas externas dependem dos projetos abaixo.
  2. Defina a variável de caminho de classe TRADEFED_ROOT em Window > Preferences > Java > Build Path> Classpath Variables e aponte-a para a raiz de origem comercializada.
  3. Defina a variável de caminho TRADEFED_ROOT em Window > Preferences > General > Workspace > Linked Resources e aponte-a para a raiz de origem comercializada.
  4. Use o assistente File > Import...-> General > Existing Projects into workspace" para acessar esses projetos Java de código aberto na seguintes caminhos:

    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. Opcionalmente, para conferir o código-fonte de ddmlib, anexe o código-fonte de uma ramificação de ferramentas desagrupada, como /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java.

  6. Opcionalmente, se você também quiser que os projetos do arcabouço do CTS sejam carregados, importe:

    test/suite_harness/common/util
    test/suite_harness/common/host-side/util
    test/suite_harness/common/host-side/tradefed
    

Formatar automaticamente

OBSERVAÇÃO: arquivos necessários ativos no development/ide/eclipse em toda a plataforma árvore de origem. Então, você precisará acessar uma ramificação da plataforma, como main. para obter esses arquivos: /development/main/ide/eclipse/

Use os arquivos de preferência no Eclipse para definir automaticamente o formatador como Guia de estilo do Android. Para fazer isso no Studio:

  1. Vá para Janela > Preferências > Java > Estilo do código.
  2. Em Formatador, importe o arquivo android-formatting.xml.
  3. Em Organizar > Importações, importe o arquivo android.importorder.

Remover os espaços em branco à direita

Para forçar o Eclipse a remover todos os espaços em branco à direita:

  1. Vá para Janela > Preferências -> Java -> Editor -> Salvar ações.
  2. Em seguida, Outras ações -> Configurar -> Código > Guia "Organização" -> Formatador.
  3. Marque Remover espaços em branco à direita.
  4. Clique em Aplicar e fechar.

Verificar o estilo de código

Ao enviar uma lista de alterações, um gancho de pré-upload automático será executado para verificar seu formato do código: google-java-format

Isso ajuda a formatar seu código no padrão comum.

Depurar eclipse

Se quiser executar o código do TF por meio de um depurador no Eclipse, recomendamos que você primeiro crie um teste de unidade para o código em questão, porque esse é o método mais simples mais rápida e fácil de usar.

Para depurar um teste de unidade do TF, basta clicar com o botão direito nele e selecionar Debug As > JUnit teste.

Para depurar um teste funcional do TF, siga as instruções na seção anterior para executar um teste funcional, mas use o comando Run > Configurações de depuração.

Para depurar o programa TF, ao executar qualquer configuração, siga as instruções na seção anterior para executar um teste funcional, mas forneça os argumentos de linha de comando para a configuração que você quer executar na etapa 4. Então, para depurar o "instrument" do navegador, vá até o menu Executar > Configuração de depuração e defina a guia Arguments na configuração de depuração do Eclipse como -- package <package to run> instrument

Depuração remota com Eclipse

Siga estas etapas para depurar remotamente uma sessão negociada iniciada a partir de Linha de comando tradefed.sh:

  1. Inicie o Tradefed.sh com a flag de depuração: TF_DEBUG=1 tradefed.sh.
  2. Aguarde até ver esta solicitação da JVM: Listening for transport dt_socket at address: 10088. Isso significa que a JVM está aguardando o depurador anexar na porta 10088.
  3. Anexe com a depuração remota do Eclipse no menu principal: selecione Run > Depurar Configurações....
  4. Na caixa de diálogo pop-up, selecione Remote Java Application no menu à esquerda.
  5. Clique no ícone New launch configuration na barra de ações.
  6. Nomeie a configuração como quiser e selecione Tradefederação como o projeto.
  7. Preencha a porta usando o endereço fornecido anteriormente.
  8. Alterne para a guia Origem e adicione os projetos comércia e google-tradefed para o caminho de pesquisa de origem.
  9. Clique em Depurar para iniciar a sessão de depuração.

O depurador se anexa ao processo de detecção da JVM e ao terminal em execução tradefed.sh mostra a solicitação tf>.

Para percorrer o código no modo de depuração, defina um ponto de interrupção no Eclipse e invoque seu comando do Tradefed (por exemplo, run <test>) no terminal. Para depurar qualquer coisa durante a inicialização do TF, é possível definir o ponto de interrupção primeiro e depois anexar o arquivo depurador.

DICA: para usar uma porta alternativa, adicione TF_DEBUG_PORT=nnn ao comando na etapa 1 acima. Você pode até usar isso em um ambiente de produção se tiver uma experiência travar bugs para investigar: altere suspend=y para suspend=n em tradefed.sh e Começar com a flag de depuração. A JVM não espera a conexão do depurador, mas você pode fazer isso ou seja, a qualquer momento, desde que o processo ainda esteja em execução.

Depuração remota usando JDB

Para usar o Java Debugger JDB, siga as etapas parecidas com as do Eclipse:

  1. Inicie tradefed.sh com a flag de depuração: TF_DEBUG=1 tradefed.sh.
  2. Aguarde até ver o prompt da JVM: Listening for transport dt_socket at address: 10088.
  3. Conecte-se ao jdb. Por exemplo, em croot run:

    jdb -attach 10088 \
        -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
    
  4. Aguarde a conexão e faça a depuração. Execute man jdb para receber mais ajuda.

Examinar a cobertura do código

  1. Instale o plug-in do Ellemma.
  2. Acesse Ajuda > Instale o novo software e aponte o assistente para: https://www.eclemma.org/pt/
  3. Depois de instalado, selecione a opção Cobertura como > JUnit (em inglês) para realizar uma e a cobertura de código.