NOTA: Esta solución se basa en el uso de Eclipse Indigo (3.8.2) y podría tener que implementarse de forma ligeramente diferente para otro IDE, aunque los principios básicos serán los mismos.
que tenían problemas similares y me encontré con que haga lo siguiente siempre funciona:
(NOTA:. Estas instrucciones son para la construcción de un nuevo grupo de proyecto desde cero Si has partes del grupo de proyecto ya construido, entonces es posible que tenga que modificar sus proyectos para que se conecten en la misma forma.)
- crear un nuevo proyecto de biblioteca de Android marcando la casilla de verificación "es la biblioteca" durante la creación. (por ejemplo, un proyecto de Android llamado "RemingtonAndroidTools").
- Cree el proyecto de la biblioteca Android y verifique que haya creado un archivo jar en la carpeta bin. (Por ejemplo, un archivo jar llamado "RemingtonAndroidTools.jar".)
- crear un proyecto Android vacío para probar la aplicación para Android que servirá como un Test App Android. (Por ejemplo, un proyecto de Android llamado "RemingtonAndroidToolsTestApp"). No necesitará modificar el código fuente o los recursos del proyecto de la aplicación de prueba de Android a menos que tenga algo que deba agregarse para la prueba. Se pueden probar muchas cosas sin modificaciones al Android App App Project. El proyecto Android Test App es un puente entre su proyecto de biblioteca Android y el proyecto Android Junit que hace posible la prueba del proyecto de la biblioteca Android a través de Android Junit.
- vaya a la pestaña Biblioteca de Java Build Path para el proyecto Android Test App ("RemingtonAndroidToolsTestApp" en este ejemplo).
- Añadir el archivo JAR ("RemingtonAndroidTools.jar" en este ejemplo) del Proyecto Biblioteca androide ("RemingtonAndroidTools" en este ejemplo) a través del botón "Añadir tarros ...".
- Cree un nuevo proyecto de prueba de Android (por ejemplo, "RemingtonAndroidToolsTester") que servirá como un analizador de biblioteca de Android y seleccione el proyecto Android App App ("RemingtonAndroidToolsTestApp" en este ejemplo) como destino.
- vaya a la pestaña Biblioteca de Java Build Path para el proyecto Android Biblioteca Tester ("RemingtonAndroidToolsTester" en este ejemplo).
- Añadir el archivo JAR ("RemingtonAndroidTools.jar" en este ejemplo) del Proyecto Biblioteca androide ("RemingtonAndroidTools" en este ejemplo) a través del botón "Añadir tarros ...".
- Busque la última carpeta de su paquete de Android en el proyecto Android Library Tester ("danny.remington.remington_android_tools_test_app.test" por ejemplo) y agregue una clase de prueba ("MainActivityTest" por ejemplo) que hereda de ActivityInstrumentationTestCase2.
- Edite la clase de prueba ("TestActivityTest" en este ejemplo) para usar la actividad (por ejemplo "TestActivity") de la aplicación de prueba de Android ("RemingtonAndroidToolsTestApp" en este ejemplo) como parámetro para ActivityInstrumentationTestCase2.
- Editar la clase de prueba ("TestActivityTest" en este ejemplo) y crear un constructor por defecto que hace una llamada a super (Clase) y que pasa en la clase del Test App Android ("TestActivity.class", por ejemplo).
Usted debe terminar con tres proyectos (Biblioteca de Android, Android aplicación de prueba, Android Biblioteca Tester) que se parecen a esto:
Deberías terminar con una clase para probar tu biblioteca de Android que se parece a esto:
package danny.remington.remington_android_tools_test_app.test;
import android.test.ActivityInstrumentationTestCase2;
import danny.remington.remington_android_tools_test_app.TestActivity;
/**
*
*/
public class TestActivityTest extends
ActivityInstrumentationTestCase2<TestActivity> {
public TestActivityTest() {
super(TestActivity.class);
}
}
Luego puede agregar cualquier prueba que desee. No será necesario que haga referencia a la aplicación de prueba de Android ("RemingtonAndroidToolsTestApp" en este ejemplo) para ejecutar sus pruebas a menos que requieran acceso a un componente específico de Android (como la carpeta Activos, por ejemplo). Si necesita acceder a cualquier componente específico de Android, puede hacerlo modificando la aplicación de prueba de Android ("RemingtonAndroidToolsTestApp" en este ejemplo) y luego haciendo referencia a ella a través de la instrumentación proporcionada por la API estándar de Android Junit.(Puede leer más sobre esto aquí: http://developer.android.com/tools/testing/testing_android.html)
O (** alerta de enchufe descarado **) podría utilizar un proyecto que creé: Android Library Test Harness (lo que me gusta llamar "Alt H"). Está disponible como un repositorio de git: https://gitorious.org/alth El proyecto aún está en desarrollo y la documentación es un poco escasa, así que no dude en contactarme si tiene alguna pregunta. – i41