Siga estos pasos para configurar Tradefed usando Eclipse.
Cree un espacio de trabajo separado para desarrollar Trade Federation, no reutilice un espacio de trabajo ya empleado para el desarrollo de dispositivos Android.
Si es necesario, puede descargar Eclipse IDE para desarrolladores de Java desde: eclipse.org/downloads
Crear proyectos
- Ejecute make una vez desde la línea de comandos. Esto creará bibliotecas externas que dependen de los proyectos a continuación.
- Establezca la variable classpath TRADEFED_ROOT en
Window > Preferences > Java > Build Path> Classpath Variables
de ruta de clase y apúntela a su raíz de origen tradefed - Establezca la variable de ruta TRADEFED_ROOT en
Window > Preferences > General > Workspace > Linked Resources
y apúntela a su raíz de origen tradefed Utilice el asistente
File > Import...-> General > Existing Projects into workspace"
para incorporar estos proyectos Java de código abierto en las siguientes rutas: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
Opcionalmente, si desea ver el código fuente de
ddmlib
, adjunte el código fuente de una rama de herramientas desagregada, como /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java .Opcionalmente, si también desea que se carguen los proyectos de arnés CTS, importe:
test/suite_harness/common/util test/suite_harness/common/host-side/util test/suite_harness/common/host-side/tradefed
Auto formato
NOTA: Los archivos necesarios se encuentran dentro de development/ide/eclipse
en el árbol fuente de la plataforma completa. Por lo tanto, deberá consultar una rama de la plataforma como master
para obtener estos archivos: /development/master/ide/eclipse/
Utilice archivos de preferencias en Eclipse para configurar automáticamente el formateador en la guía de estilo de Android. Para hacer esto en Studio:
- Vaya a Ventana > Preferencias > Java > Estilo de código .
- En Formateador , importe el archivo
android-formatting.xml
. - En Organizar > Importaciones , importe el archivo
android.importorder
.
Eliminar espacios en blanco finales
Para obligar a Eclipse a eliminar todos los espacios en blanco finales:
- Vaya a Ventana > Preferencias -> Java -> Editor -> Guardar acciones .
- Luego , Acciones adicionales -> Configurar -> Código> pestaña Organizar -> Formateador .
- Marque Quitar espacios en blanco al final .
- Haga clic en Aplicar y cerrar .
Comprobar el estilo del código
Al enviar una lista de cambios, se ejecutará un enlace de carga previa automática para verificar el formato de su código: google-java-format
Esto ayuda a formatear su código al estándar común.
Eclipse de depuración
Si desea ejecutar el código TF a través de un depurador en Eclipse, se recomienda que primero cree una prueba unitaria para el código en cuestión, ya que esta será la forma más sencilla y rápida de ejercer la funcionalidad.
Para depurar una prueba unitaria de TF, simplemente haga clic derecho sobre ella y seleccione Depurar como > Prueba JUnit .
Para depurar una prueba funcional de TF, siga las instrucciones de la sección anterior para ejecutar una prueba funcional, pero use el menú Ejecutar > Depurar configuraciones .
Para depurar el programa TF en sí, al ejecutar cualquier configuración, siga las instrucciones de la sección anterior para ejecutar una prueba funcional, pero proporcione los argumentos de la línea de comandos para la configuración que desea ejecutar en el paso 4. Entonces, para depurar la configuración del 'instrumento', vaya al menú de configuración Ejecutar > Depurar y establezca la pestaña Argumentos en la configuración de depuración de Eclipse en --package -- package <package to run> instrument
.
Depuración remota con Eclipse
Siga estos pasos para depurar de forma remota una sesión tradefed iniciada desde la línea de comando tradefed.sh
:
- Inicie tradefed.sh con el indicador de depuración:
TF_DEBUG=1 tradefed.sh
- Espere hasta que vea este mensaje de JVM:
Listening for transport dt_socket at address: 10088
Esto significa que JVM está esperando que el depurador se conecte al puerto10088
. - Adjunte con la depuración remota de Eclipse desde el menú principal: seleccione Ejecutar > Configuraciones de depuración... .
- En el cuadro de diálogo emergente, seleccione Aplicación Java remota en el menú de la izquierda.
- Haga clic en el ícono Nueva configuración de lanzamiento en la barra de acción.
- Asigne el nombre que desee a la configuración y seleccione tradefederation como proyecto.
- Rellene el puerto utilizando la dirección proporcionada anteriormente.
- Cambie a la pestaña Fuente y agregue los proyectos tradefederation y google-tradefed a Source Lookup Path .
- Haga clic en Depurar para iniciar la sesión de depuración.
El depurador se conecta al proceso JVM de escucha y el terminal que ejecuta tradefed.sh
muestra el indicador tf>
.
Para recorrer su código en modo de depuración, establezca un punto de interrupción en Eclipse e invoque su comando Tradefed (es decir run <test>
) en la terminal. Para depurar cualquier cosa durante el inicio de TF, primero puede establecer el punto de interrupción y luego adjuntar el depurador de Eclipse.
SUGERENCIA: Para usar un puerto alternativo, agregue TF_DEBUG_PORT=nnn
al comando en el paso 1 anterior. Incluso puede usar esto en un entorno de producción si tiene errores de bloqueo misteriosos para investigar: cambie suspend=y
a suspend suspend=n
en tradefed.sh
y comience con el indicador de depuración. La JVM no esperará a que se conecte el depurador, pero puede hacerlo en cualquier momento siempre que el proceso aún se esté ejecutando.
Depuración remota usando JDB
Para usar Java Debugger JDB, siga pasos similares a los de Eclipse:
- Inicie
tradefed.sh
con el indicador de depuración:TF_DEBUG=1 tradefed.sh
- Espere hasta que vea el aviso de JVM:
Listening for transport dt_socket at address: 10088
. Conecta
jdb
. Por ejemplo, desde croot ejecutar:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
¡Espere la conexión y depure! Ejecute
man jdb
para obtener más ayuda.
Examinar la cobertura del código
- Instale el complemento Eclema .
- Vaya a Ayuda > Instalar nuevo software y dirija el asistente a: http://update.eclemma.org/
- Una vez instalado, seleccione la opción de prueba Cobertura como > JUnit para realizar una ejecución de cobertura de código.