intive Argentina Blog

Android Testing – Robbotium

¿Para qué realizar tests unitarios?

Uno de los beneficios de los tests unitarios es que brindan seguridad acerca de que el código funcione y evita que se produzcan errores al momento de introducir nuevos cambios. Además, facilitan las pruebas de integración y el margen de error se ve acotado por la presencia de un test para cada función.

¿Cómo empezar con Android Studio o IntelliJ IDEA?

En primera instancia, se debe hacer click en la opción Build Variants. Allí se podrán seleccionar dos tipos de tests: Android Instrumentation Tests y Unit Tests. Al optar por alguno, el ide switcheará a un proyecto de test (no es posible tener ambos activos al mismo tiempo). Es más general el uso del primero, dado que corre pruebas sobre un emulador. Unit Tests dispone, en cambio, de los típicos junit tests de java que corren sobre la jvm de la máquina de uno por lo que no será posible acceder a clases de Android, salvo que sean mockeadas.

1

¿Cómo realizar un Android Instrumentation Test de forma sencilla con Robotium?

Se debe instalar el plugin “Robotium Recorder” y, luego de reiniciar el ide, lanzarlo desde el menú Tools.

2

Se debe seleccionar el módulo y hacer click en Next.

3

4

Por otra parte, habrá que tener creada un Android Virtual Device para capturar el test deseado. Un mensaje indica las partes del proceso:

Al llegar al paso final, ya se podrá navegar la aplicación como un usuario común y Robotium irá capturando los pasos de la prueba. Al finalizarla será posible tocar Stop y borrar pasos innecesarios y además será posible guardar la prueba.

Luego, se podrá correrla o crear una nueva.

Al final aparecerá el código generado y habrá que agregarlo a los asserts necesarios, por ejemplo:

 

Diego Pappalardo

Diego Pappalardo desarrolla aplicaciones Android para la compañía desde septiembre de 2015. También es Team Leader de la brigada Android, en la que coordina el desarrollo de investigaciones y escritura de artículos. Se recibió en 2009 en la Universidad Tecnológica Nacional de ingeniero electrónico. Además de ser un rockstar con Android, Diego conoce mucho de  Java, Git, dispositivos móviles y  desarrollo de software en general.

Deja un comentario