jueves, 31 de julio de 2014

Testing automatico con Robotium

¿Que es Robotium? ¿como se usa? ejemplos.
Robotium es un framework creado para implementar test automáticos de aplicaciones Android. Con esta herramienta se puede testear cualquier tipo de aplicación visual como Activities o Dialogs. Asemejandolo con el mundo del desarrollo web, se podría decir que Robotium es el Selenium de Android.
La dinámica de trabajo con este framework es la programación de acciones que simulan al usuario. Por ejemplo, se puede realizar la acción de realizar click en un texto especificado, introducir un texto en una caja de entrada concreta o busca un texto en el propio formulario. Realizando varias de estas acciones se puede comprobar si hay un texto de salida mediante un Assert y de esta forma validar si la aplicación funciona bien y pasa el test.
Un ejemplo de código en el test sería el siguiente:
solo.sendKey(Solo.MENU);
solo.clickOnText("Archivo");
solo.clickOnText("Nuevo");
Assert.assertTrue(solo.searchText("Crear nueva ficha"));
Entonces, en este Workshop vamos a probar este framework aquí comento los pasos a realizar:
  • Instalar las herramientas que ofrece y recomienda Google: Eclipse, ADT (Android Develepment Tools), SDK (Software Development Kit) y JDK (Java).
  • Descargar el archivo robotium-solo-(version).jar que contiene el framework.
  • Será necesario que tengan un proyecto Android con la aplicación que deseas testear.
  • Crear un proyecto de Test Android: Pulsar File->New->Project->Android->Android Test Project.
  • Añadir el archivo jar al proyecto: Pulsar en el proyecto->Build path->Configure Build Path y añadir el jar de Robotium.
  • Modificar el fichero AndroidManifest.xml y cambiar en el atributo targetPackage de ApplicationTesting a ApplicationToTest.
  • Crear un test de ejemplo: Pulsar New->Class, derivar esta clase de ActivityInstrumentationTestCase2 e implementar los test que se deseen.
  • Para probarlo es necesario que el archivo apk tenga el mismo certificado que el proyecto de test. Para esto será recomendable darle un vistazo a la firma de aplicaciones del manual de android.
  • Finalmente ejecutar los test: Pulsar en el proyecto Run As>Android JUnit Test.
Como todos los test automáticos del interface visual, tienen problemas con la estabilidad del propio test. El principal problema que nos podemos encontrar es con la modificación del propio interface, algo habitual cuando se está desarrollando y diseñando la aplicación. Si ocurriese alguna modificación en algún texto, los test afectados se deberían cambiar modificandolos a los nuevos literales.
Al igual que otros test automáticos se puede utilizar con Maven o Ant para integrar las pruebas en algún servidor de integración continua como Jenkins y de esta forma calcular los resultados de los test de manera automática para tenerlos siempre a disposición del equipo. La licencia de este framework es Apache 2.0 y actualmente se encuentra por la versión 5.2.1. Una herramienta interesante para aquellos apasionados del testing y de Android.

Link de descarga | Robotium

No hay comentarios:

Publicar un comentario