Enmilocalfunciona

Thoughts, stories and ideas.

Ejecutando pruebas automatizadas con Perfecto Mobile

Publicado por Cristina Lopez-Goicochea Juarez el

QAPerfecto Mobile

En este artículo veremos cómo funciona la herramienta Perfecto Mobile y cómo podemos lanzar pruebas automatizadas en dispositivos móviles directamente en la plataforma.

Para ello, primero deberemos autenticarnos en Perfecto Mobile. Existe la posibilidad de adquirir un trial que nos permitirá probar la herramienta.

Introducimos las credenciales y una vez autenticados, se nos presentará la pantalla principal.

En Manual Testing podremos interactuar con los dispositivos disponibles, ver sus capabilities para poder conectarnos a ellos vía código, instalar aplicaciones y probarlas, etc.

En Test Analysis podremos visualizar los resultados de nuestras ejecuciones realizadas, mapas de calor, ver la ejecución en tiempo real, etc.

En Account Setup podremos configurar nuestra plataforma subiendo los ficheros necesarios para nuestros tests, es decir, aplicaciones, imágenes, audios, documentos, etc.

Manual Testing

Accedemos a Manual Testing y se nos presenta la pantalla siguiente:

En esta pantalla podremos visualizar los dispositivos más recientes con los que hemos trabajado y consultar tambien la lista de dispositivos Android, iOS y Web (tanto Windows como MAC).

Si hacemos clic en uno de los dispositivos podremos ver su información y capabilities que podremos usar en nuestro código fuente

También podremos abrir el dispositivo y operar con él de forma manual

Account Setup

Accedemos a Account Setup y podremos visualizar / añadir todos los ficheros y aplicaciones necesarios para nuestros tests.

Para ello, hacemos clic en el botón ubicado en la parte inferior derecha de la pantalla. Añadimos el fichero / aplicación. En este caso, añadiremos una aplicación Android

En este momento, nos dará a elegir si queremos añadirlo en un repositorio público o nuestro repositorio privado

Como podremos ver, nos marcará el localizador hacia el nuevo fichero. Deberemos anotar este localizador ya que nos servirá para poder acceder a dicho fichero dentro de nuestro código fuente.

Generación de un Token de Seguridad

Antes de poder codificar y utilizar la plataforma, deberemos generar nuestro Security Token. Para ello, iremos al menú de nuestro usuario y accederemos a "My Security Token"

Se nos presentará una pantalla como la siguiente:

Podremos generar un nuevo token de seguridad si así se desea. Una vez generado, nos anotaremos el token generado, ya que lo necesitaremos para autenticarnos con Perfecto Mobile en nuestras pruebas.

Generación de Código Fuente en Java

Vamos a ver cómo generar y ejecutar una prueba en Java/Selenium desde nuestro local a la plataforma Perfecto Mobile.

En primer lugar, crearemos un nuevo proyecto Maven y añadiremos en el fichero pom.xml, la referencia al repositorio de librerías de Perfecto

Asimismo, añadiremos las dependencias necesarias, entre ellas, la dependencia de Perfecto Reporting, la cual veremos su funcionamiento más adelante en este post.

Tal y como hemos visto anteriormente, podemos consultar las capabilities de un determinado dispositivo y aplicarlas en nuestro código fuente. Aquí vemos las capabilities necesarias para poder ejecutar una prueba en un dispositivo Android

Como podemos comprobar la primera de las capabilities es la aplicación "app" la cual, en su valor, contendrá el valor del localizador de la aplicación que hemos visto antes.

Si nos centramos ya en el código fuente, veremos cómo configurar Perfecto Reportium. Con ello, podremos establecer información relativa a nuestro proyecto y ejecución, añadir tags que puedan diferenciar dentro de nuestro análisis información sobre la ejecución. Por ejemplo, si hemos ejecutado Android, iOS, Web, versiones, pasos de la ejecución, etc.

Luego veremos cómo se visualiza todo ésto dentro de Perfecto Mobile.

Inicializamos nuestro test, estableciendo las capabilities vistas anteriormente y creando el objeto driver llamando a una URL que corresponderá con nuestra plataforma en Perfecto Mobile.

Como podemos ver, la url consistirá en nuestro HOST dentro de Perfecto Mobile, adjuntando las capabilities.
Asimismo, inicializamos también Perfecto Reportium

En los métodos donde interaccionamos con los elementos de la pantalla, podremos introducir también llamadas a Perfecto Reportium, incluidos las aserciones, las cuales luego podremos visualizar en la plataforma

Una vez tengamos el código fuente generado, bastará con ejecutar el código desde nuestro editor local, ya que éste, mediante la URL generada, conectará directamente con la plataforma Perfecto Mobile.

Visualización de Resultados

Una vez ejecutado el código vamos a Analyze Reports dentro de la plataforma.

Aquí podemos ver como se visualiza la ejecución realizada dentro de nuestro "Job" creado en el reporte, llamado "Job APK". Si hacemos clic en él podremos ver todas las ejecuciones que correspondan con dicho job.

Como podemos ver en la imagen anterior tenemos identificada la ejecución con los tags generados en el reporte. Hacemos clic en la ejecución y podremos acceder al detalle de la misma

Aquí vemos todos los pasos ejecutados y la acción con la cual hemos interactuado con los elementos (click, sendkeys...). Podremos visualizar el video completo de la ejecución y los screenshots generados en cada paso.

También podremos visualizar la información completa de la ejecución

Conclusión

Como resumen, Perfecto Mobile es una plataforma que nos permite realizar pruebas automatizadas tanto en entornos Web (Windows y MAC) como Mobile (Android, iOS) de una forma sencilla, facilitando el trabajo ya que nos proporciona las capacidades necesarias y nos permite generar completos reportes. Asimismo, no es necesario subir el código a la plataforma para poder ejecutarlo sino que permite realizarlo desde el propio editor local, lo que radica un menor coste de tiempo en pruebas y más agilidad.