Robotium Tutorial: Android Marco de pruebas con ejemplo
⚡ Resumen inteligente
Robotium es un código abierto Android Marco de automatización de pruebas que impulsa aplicaciones nativas e híbridas a través de su interfaz de usuario, permitiendo a un probador escribir scripts de escenarios funcionales, de sistema y de aceptación que abarcan varios Android actividades.
¿Qué es Robotium?
Robotium es un Android Marco de pruebas que automatiza los casos de prueba para aplicaciones nativas e híbridas. Robotium, un desarrollador puede crear casos de prueba de GUI automatizados y robustos para Android aplicaciones. Un desarrollador también puede escribir escenarios de pruebas funcionales, de sistema y de aceptación que abarquen varias Android actividades.
Robotium Marco de prueba
El Android El marco de pruebas presenta las limitaciones que se enumeran a continuación.
- No se pueden manejar múltiples actividades
- El rendimiento de ejecución de la prueba es lento
- Los casos de prueba son complejos y difíciles de implementar.
El Robotium El marco es la mejor opción para realizar pruebas en un Android .
Robotium es un marco de código abierto y se considera una extensión del Android marco de pruebas. Usando Robotium, un desarrollador puede crear casos de prueba de GUI automatizados y robustos para Android aplicaciones. Además, un desarrollador puede escribir escenarios de pruebas funcionales, de sistema y de aceptación que abarquen múltiples Android actividades.
La tabla a continuación resume las características avanzadas que distinguen Robotium desde el marco de instrumentación simple.
Características avanzadas de Robotium
Robotium Clases de casos de prueba
Robotium envía un pequeño conjunto de clases para pruebas, y el ejemplo del artículo importa el legado com.jayway.android.robotium.solo paquete. Estas clases admiten casos de prueba que abarcan múltiples actividades y Solo está integrado con ActivityInstrumentationTestCase2.
Nota: corriente Robotium Las versiones exponen la misma clase bajo la versión más corta. com.robotium.solo paquete, mientras que la coordenada Maven se mantuvo com.jayway.android.robotium:robotium-solo. Ajuste la importación para que coincida con la versión JAR que realmente agregue al proyecto.
El siguiente diagrama muestra cómo la clase Solo se sitúa por encima del caso de prueba de instrumentación.
Integración de Robotium y ActivityInstrumentationTestCase2
Un probador puede escribir casos de prueba sin conocimiento del diseño de la aplicación, lo que hace que el enfoque sea una forma de prueba de caja negra. Esa es una ventaja sobresaliente en comparación con el simple Android clases de casos de prueba.
Instrucciones de uso Robotium
Para utilizar Robotium en tu Android Para probar el proyecto, debe seguir los pasos que se indican a continuación.
¿Cómo Usar? Robotium
Para garantizar la calidad de su Android Para la solicitud, siga el procedimiento de cuatro pasos que se detalla a continuación.
- Diseñar la especificación de la prueba
- Desarrollar el programa de pruebas
- Ejecutar el caso de prueba en el dispositivo de destino.
- Recopilar el resultado de la prueba
El diagrama de flujo que aparece a continuación ordena esas cuatro etapas.
Android procedimiento de prueba de la aplicación
PASO 1) Especificación de prueba de diseño
Este es el primer paso para probar su aplicación. En este paso se define el objetivo que se va a probar. Android La aplicación tiene muchos elementos que deben probarse, como la interfaz de usuario, las actividades, los componentes y los servicios. Definir claramente el objetivo ayuda a lograr una amplia cobertura de pruebas.
- Planificar los tipos de pruebas que deben realizarse (pruebas unitarias, pruebas funcionales, pruebas de sistema).
- Diseñar cada caso de prueba para una cobertura máxima mientras se mantieneping El número de casos de prueba es pequeño. Cuanto más código pruebes, mayor será la probabilidad de detectar errores precozmente.
PASO 2) Escribir el programa de prueba
Esta sección le guía a través de la redacción de un Android programa de prueba usando Android JUnit pruebas y Robotium. Suponga que ya ha desarrollado un Android programa llamado HolaAndroidEste programa tiene las funciones que se describen a continuación.
- Muestra el texto “¡Hola mundo!” en la pantalla.
- Mostrar un saludoAndroid mensaje cuando el usuario pulsa el botón “Inicio”.
La siguiente captura de pantalla muestra la aplicación que se está probando ejecutándose en un dispositivo.
HolaAndroid Postulación
Requisitos del sistema
- El Android La plataforma se envía con un sistema preintegrado. JUnit 3 marco, que es lo que
ActivityInstrumentationTestCase2se basa en. - Para crear un Android proyecto de prueba de EclipseSu máquina necesita un funcionamiento Android Instalación del SDK.
- Instalar el actual Android SDK de la plataforma en lugar de una versión anterior fija.
Las capturas de pantalla de este tutorial utilizan Eclipse con el complemento ADT, que era el conjunto de herramientas estándar cuando se escribió el ejemplo. Eclipse ADT ya no es compatible, por lo que en una máquina moderna tendrías que... descargar Android Studio en su lugar y reutilizar el mismo código de prueba dentro de un Gradle .
Para el Robotium marco de pruebas, descárguelo Robotium biblioteca de la Robotium página del proyecto.
Crear una Android Proyecto de prueba
- Haga clic en Archivo -> Nuevo -> Otro
- Elija Android -> Android Pruebe el proyecto como se muestra en la siguiente figura y, a continuación, seleccione Siguiente.
Crear un nuevo Android proyecto de prueba
Escribe el nombre de tu proyecto de prueba. Por convención, el proyecto de prueba debería llamarse “Hola”.AndroidPrueba".
Agregue el nombre del proyecto de prueba según la convención de nomenclatura.
Seleccione la aplicación de destino que se va a probar. En este caso es Hello.Android, luego haga clic en Finalizar.
Seleccione la aplicación de destino que se va a probar.
Crear conjuntos de pruebas
Según sus especificaciones de prueba, ahora puede crear conjuntos de pruebas para su programa de prueba. Puede elegir entre varias opciones. pruebas de software marcos de trabajo. Este tutorial utiliza el estándar. Android marco de prueba ActivityInstrumentationTestCase2. Para probar con Robotium, añade el Robotium archivo de biblioteca a un libs directorio dentro de la carpeta de tu proyecto.
Un caso de prueba define el entorno utilizado para ejecutar múltiples pruebas. Para definir un caso de prueba, siga la estructura del programa que se muestra a continuación.
- Implementar una subclase de TestCase.
- Defina variables de instancia que almacenen el estado del dispositivo.
- Inicialice el estado del dispositivo sobrescribiendo el método setUp().
- Limpia después de una prueba sobrescribiendo tearDown().
El diagrama que aparece a continuación relaciona esa estructura con el programa de prueba que está a punto de escribir.
Estructura del programa de prueba
package com.example.helloandroid.test; import com.example.helloandroid.HelloAndroid; import com.jayway.android.robotium.solo.Solo; import android.test.ActivityInstrumentationTestCase2; import android.widget.TextView; public class HelloAndroidTest extends ActivityInstrumentationTestCase2 <HelloAndroid> { private HelloAndroid mActivity; private TextView mView; private String resourceString; private Solo solo; public HelloAndroidTest () { // TODO Auto-generated constructor stub super("com.example.helloandroid",HelloAndroid.class); } @Override protected void setUp() throws Exception { // TODO Auto-generated method stub // super.setUp(); mActivity = this.getActivity(); solo = new Solo(getInstrumentation(),getActivity()); mView = (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview2); resourceString = mActivity.getString(com.example.helloandroid.R.string.hello_world); } @Override protected void tearDown() throws Exception { // TODO Auto-generated method stub //super.tearDown(); solo.finishOpenedActivities(); } public void testPrecondition() { assertNotNull(mView); } /* test Target application contains a text display "Hello World!"*/ public void testSearchText() { assertEquals(resourceString,(String) mView.getText()); } /* test HelloAndroid Activity on target application is exist*/ public void testCurrentActivity() throws Exception { solo.assertCurrentActivity("wrong activity", HelloAndroid.class); } /* test Application UI contains "Start" button */ /* send event click button to target application */ public void testSearchButton() throws Exception { boolean found = solo.searchButton("Start"); solo.clickOnButton("Start"); assertTrue(found); } }
Agregar casos de prueba
- En el mismo paquete que el conjunto de pruebas, cree las clases TestCase.
- Para probar una actividad determinada, por ejemplo, HolaAndroid, crea un caso de prueba que extienda ActivityInstrumentationTestCase2Android>.
- Dentro de esa clase, el evaluador obtiene la actividad que se está probando a través del método getActivity().
- Crea libremente una prueba para la actividad añadiendo un método llamado “prueba + nombre del método original”.
- Dentro del método de prueba, el probador puede usar Android JUnit funciones para comparar el valor real con el valor esperado. Estos métodos se muestran a continuación.
La tabla que aparece a continuación enumera los métodos de aserción e interacción más utilizados en ambos marcos de trabajo.
Métodos de ejemplo de Robotium y conectar Android marco de prueba
El conjunto de pruebas anterior verifica que la interfaz gráfica de usuario de la aplicación muestre el texto "¡Hola mundo!" y contenga un botón llamado "Iniciar".
PASO 3) Ejecutar prueba
Una vez que haya terminado de escribir su programa de prueba, ejecute la prueba siguiendo los pasos que se indican a continuación.
- Conecta un Android Conecta el dispositivo a tu PC o inicia un emulador si no dispones de un dispositivo real.
- En tu IDE, haz clic con el botón derecho en el proyecto de prueba y elige Ejecutar como → Android Prueba unitaria.
La captura de pantalla que aparece a continuación muestra cómo se inicia la ejecución de la prueba desde el IDE.
Ejecutando el programa de prueba
Además de ejecutar la prueba desde el IDE, puede ejecutarla desde la línea de comandos. En este programa de prueba, el paquete de prueba es com.example.helloandroid.test. En una terminal de Linux, utilice el siguiente comando para ejecutar todas las pruebas de ese paquete.
$ adb shell am instrument -w -e package com.example.helloandroid.test
PASO 4) Obtener el resultado de la prueba
Una vez ejecutada la prueba, se recopilan los resultados de la misma.
En este programa de pruebas se ejecutan cuatro métodos de prueba. En la ejecución que se muestra a continuación, todos los casos de prueba se superaron.
Salida del resultado de la prueba cuando todos los casos de prueba se superan
Si una prueba falla, se muestra el resultado e indica qué pruebas fallaron.
Salida del resultado de la prueba cuando falla un caso de prueba
Fuente Code Ejemplos
Este artículo incluye ejemplos de código fuente que le ayudarán a seguir el tutorial con mayor claridad y a comprender rápidamente los detalles técnicos.
- HolaAndroid: la aplicación que se está probando.
- HolaAndroidPrueba: el programa de prueba que utiliza el Android marco de pruebas.
Si quieres comparar Robotium con las otras opciones en este espacio, vea el prueba de aplicaciones móviles guía, el Appium tutoriales y el resumen de herramientas de prueba de aplicaciones móviles.

.png)
.png)
.png)



.png)

.png)
.png)

.png)
.png)