2011-07-03 9 views
14

Érase una vez, evité Eclipse para el desarrollo de Android. Y la vida fue buena.Android Test Project Estructura del directorio al usar Eclipse

En el camino, que adoptó una convención apoyado originalmente por las herramientas de construcción de línea de comandos para Android, de tener un subdirectorio tests/ que contiene el código de prueba (por ejemplo, siendo MyProject/ el hogar de la aplicación, MyProject/tests/ ser el hogar de la prueba suite). Android hace un excelente trabajo al permitir que el código de prueba resida en un proyecto separado pero relacionado, y al tenerlo como un subdirectorio las pruebas se ubicaron lógicamente en el mismo proyecto.

Ahora estoy cambiando a Eclipse, ya que necesito apoyarlo mejor para mis suscriptores. La única forma de que haga un trabajo de calidad para apoyarlo es usarlo a diario. Y, dado que tengo un núcleo cuádruple con 4 GB de RAM, Eclipse realmente se inicia en menos de un minuto. :-)

Sin embargo, las investigaciones preliminares sugieren que Eclipse no admite subproyectos (es decir, un proyecto de Eclipse con otro proyecto de Eclipse en un subdirectorio).

Por lo tanto, mis preguntas son:

  1. Estoy en lo correcto en esta evaluación, y si estoy equivocado, ¿existen determinados pasos que debería tomar para asegurar que Eclipse es feliz? Me parece que Eclipse a veces puede ponerse un poco irritable ...

  2. ¿Cómo están organizando los desarrolladores de Android los proyectos de prueba relativos al proyecto que se está probando? Directorios pares (por ejemplo, MyProject/ para la aplicación, MyProjectTests/ para las pruebas)? Los subdirectorios pares se encuentran debajo de algún top común específico (por ejemplo, MyProject/app/ para la aplicación Android, MyProject/tests/ para el conjunto de pruebas?)? ¿Algo más?

BTW, estoy ejecutando Eclipse 3.5.2, si eso es lo que importa.

Gracias!

Respuesta

6

He estado creando proyectos de prueba con Eclipse 3.6.2 dentro de mi proyecto principal, tal como lo describe para las herramientas de línea de comandos (MyProject y MyProject/test son proyectos de Android que contienen una carpeta src). Puede crear este proyecto de prueba utilizando el Nuevo Proyecto de prueba de Android anulando la selección de "Ubicación predeterminada" y configurando la ruta.

Ninguno de mis proyectos es muy grande, pero el único problema que he tenido hasta ahora es que no puede usar la carpeta MyProject/test en el proyecto MyProject. Para poder hacer clic derecho y ejecutar como caso de prueba, debe acceder a los archivos directamente desde el proyecto MyProjectTest. Para evitar que tenga problemas, puede agregar un Filtro de recursos para ocultar la carpeta de prueba en Propiedades del proyecto> Recursos> Filtros de recursos.

Sin embargo, las investigaciones preliminares sugieren que Eclipse no admite subproyectos (es decir, un proyecto de Eclipse que tiene otro proyecto de Eclipse en un subdirectorio).

¿Qué problemas ha visto?

+0

"¿Qué problemas has visto?" - Importé un proyecto de Android, vi que no reconocía el proyecto de prueba y luego elegí investigar en línea. Cada publicación que surgió, incluidos los informes de errores en eclipse.org, indicaba que los proyectos dentro de los proyectos no son compatibles. Pensé que comenzaría a solicitar asesoramiento específico de Android en ese momento. Más tarde hoy, voy a experimentar con tu estructura: los filtros de recursos en particular serán útiles para minimizar la confusión. Retrocederé y aceptaré tu respuesta si puedo hacerlo funcionar. ¡Muchas gracias! – CommonsWare

+1

Un par de notas de seguimiento aquí. La opción Filtros de recursos puede ser nueva en 3.6; Estoy en 3.5.2 y no lo veo. Además, parece que no puedes crear proyectos de prueba a partir de una fuente existente como lo haces con los proyectos normales de Android, lo que es ligeramente molesto. Terminé cambiando el nombre de mi directorio 'tests /', creando un nuevo proyecto de prueba allí y moviendo el código fuente del caso de prueba a su posición. Pero, eso al menos parece estar funcionando. ¡Gracias! – CommonsWare

2
  1. Depende de su conjunto de herramientas:
    ADT> = v12 tiene actualmente el apoyo escamosa de "un proyecto dentro de un proyecto":
    Creating an Android Test project in Eclipse

  2. He tratado TestProject separada, y el directorio de prueba independiente, pero el enfoque de afaik "un proyecto dentro de un proyecto" parece ser el camino del futuro.
    Esto se debe a AndroidManifest.xml que se fusiona en el proyecto de prueba AndroidManifest.xml, está en la tubería para las próximas versiones de ADT.

Cuestiones relacionadas