Review de Apptim: Pruebas de performance en apps nativas

En este post escrito por Diego Gavilanes de Abstracta, te compartimos un review de Apptim, una herramienta que te analiza la performance de una app nativa mientras haces pruebas exploratorias, tanto en Android como en iOS, de forma muy sencilla de usar. No hace falta que seas desarrollador para poder usarla y entender los reportes que genera. Para mejor, podés usar una versión gratuita que se descarga acá: apptim.com.

Te invito a dos cosas, por un lado a que leas este detallado blog post de Diego contando su experiencia y haciendo un review de Apptim, y por otro a que veas esta charla de Sofía Palamarchuk, la CEO de Apptim explicando la importancia de hacer pruebas de performance en mobile y haciendo una demo del producto (que por cierto, Sofi ya nos había compartido este post).

A continuación, el post de Diego.



Review de Apptim

Hoy en día existen aproximadamente 2.5 millones de aplicaciones en Play Store (Android) y 1.8 millones en App Store (iOS). Muchas de estas aplicaciones tienen el propósito de facilitarnos actividades como ser: ejercicio, relajación, comunicación, trabajo, estudio, compras online, pagos, etc.

Pero, ¿qué las diferencia a unas de otras? ¿cuál prefiere el usuario final?

Al contar con un abanico tan amplio de aplicaciones que cumplen el mismo objetivo (y con el aumento de la competencia) la respuesta a estas preguntas se basa en que los usuarios se vuelven fieles a las aplicaciones que tengan un buen rendimiento (o “performance”) y que brinden una buena experiencia de usuario. Es decir, aplicaciones que sean rápidas, que funcionen fluidamente, que no se “cuelguen”, que no “demoren en cargar” y que no consuman demasiada batería del dispositivo.

Apptim es una herramienta que permite fácilmente analizar el rendimiento de aplicaciones móviles nativas en dispositivos reales, ayudándonos a mitigar el riesgo de que ciertos inconvenientes de performance lleguen a producción.

En este post te compartiré mi review de Apptim, compartiendo mi experiencia utilizando esta herramienta para evaluar la performance de diferentes aplicaciones móviles, desde el punto de vista de tester de software.

¿Qué es Apptim?

Apptim es una aplicación de escritorio que testers, desarrolladores, project managers y todo tipo de usuarios pueden instalar y utilizar en Windows para testear apps nativas Android y en MacOS para testear apps nativas iOS y Android.

Mientras se ejecutan pruebas manuales o automatizadas sobre la aplicación bajo prueba, Apptim captura y evalúa cierta información de performance como ser los tiempos de renderización de la aplicación, el consumo de energía, el uso de recursos y captura crashes y excepciones. Posteriormente genera un reporte con toda la información recolectada.

Además permite al usuario registrar sus notas, bugs, ideas, riesgos y tareas por hacer que surjan en su sesión de testing.

Uso e instalación

Actualmente existe una versión gratuita de Apptim para uso personal (y que según la página oficial de Apptim, seguirá siendo gratuita para siempre) y dos versiones corporativas: Team y Pro, que incorporan otras funcionalidades como ser comparación de sesiones, integración con Jira y Workspaces para trabajo colaborativo entre varios miembros de un equipo. Además, la versión Team tiene un Free Trial de 14 días.

En pocos minutos puedes comenzar a utilizar la herramienta, creando una cuenta en el sitio web y descargando la versión correspondiente para tu sistema operativo. Luego de instalarla en tu PC, debes iniciar sesión con la cuenta creada anteriormente. Una vez que inicies sesión, Apptim detectará automáticamente las dependencias que necesita en tu máquina y te pedirá autorización para descargarlas.

Características principales

  • Fácil de usar: La interfaz de usuario de Apptim es elegante e intuitiva, lo que hace que sea una herramienta sencilla de utilizar. Además, en su sitio web se puede encontrar documentación oficial que te ayudará en tus primeros pasos con la herramienta.
  • Fácil de configurar: Es necesario algunas configuraciones muy simples que el equipo de Apptim explica en detalle en su documentación, acá para los dispositivos Android y acá para los dispositivos iOS. El esfuerzo requerido para empezar a utilizar la herramienta es mínimo ya que instalarla, iniciar una prueba y obtener los resultados en el reporte son procesos sencillos.
  • Testing de performance en apps móviles nativas: Como se mencionó anteriormente, Apptim permite evaluar el rendimiento de aplicaciones móviles nativas, o en el módulo nativo de aplicaciones híbridas. También se puede utilizar mientras se ejecutan pruebas en apps móviles web, pero el rendimiento que se mide en ese caso es el del browser que se esté usando y no el de la app bajo prueba.
  • Reportes: Luego de cada sesión de pruebas, la herramienta genera un reporte con las mediciones de performance y un reporte para cada uno de los bugs registrados al ejecutar la sesión de testing. Cada reporte se puede compartir de forma individual.
  • Integración con Jira: Las versiones Team y Pro de Apptim permiten integrarse con Jira a través de una API Key, para que el usuario pueda publicar y realizar seguimiento a los bugs directamente en esta herramienta de gestión de proyectos.
  • Testing en dispositivos reales y en emuladores Android: Para que esta herramienta funcione se debe conectar, a través de un cable USB, el dispositivo móvil a la PC donde se encuentra instalado Apptim. También se puede utilizar un emulador Android.
  • Espacios de trabajo (workspaces): Esta funcionalidad permite tener todas las sesiones centralizadas en un mismo lugar y compartirlas con un equipo de trabajo específico. Cada vez que ejecutes una sesión de prueba, podrás subirla a un workspace. Estos espacios de trabajo se pueden ver al loguearse en la web de Apptim. Al invitar a otros usuarios a un workspace, todos podrán ver las sesiones de prueba que hayas subido a ese espacio, así como también cada uno podrá subir sus sesiones (la opción de invitar a otros usuarios a tu workspace está disponible sólo en las versiones de pago).

Pruebas de Performance

Conversando con Sofía Palamarchuk, Co-fundadora y CEO de Apptim, me comentó que a diferencia de otras soluciones existentes, Apptim no requiere que se instale una SDK para capturar la información de performance. No es necesario cambiar nada en la aplicación que se desea probar. Por esto es que cualquier usuario (testers, devs, product owners, beta testers, etc) puede usar Apptim y acceder a los datos de rendimiento de la app. Solo con tener la app instalada en un dispositivo, se puede empezar a testear y medir su performance.

La herramienta evalúa el rendimiento del dispositivo de forma automática, lo que evita al usuario la necesidad de tener un conocimiento profundo sobre el tema. Una vez finalizada la sesión de pruebas se genera un reporte sobre el estado de la aplicación. El equipo de Apptim armó esta guía en donde se explican las diferentes secciones de los reportes y las métricas que aparecen para mejor entendimiento de toda la información.

Durante la sesión de pruebas, Apptim mide el comportamiento del dispositivo correspondiente al consumo del CPU, memoria ram, red y batería, mientras la aplicación bajo prueba se ejecuta.

Posteriormente, en el reporte, se muestran advertencias en amarillo y alertas en rojo de los consumos que están por encima de los límites por defecto que sugiere Apptim. Estos límites están basados en buenas prácticas para desarrollo Android y para desarrollo iOS, junto con otros hallazgos realizados en estudios de mercado.

Además, en cada excepción que Apptim detecte durante la sesión exploratoria, toma una captura de pantalla del dispositivo de forma automática y la asocia al issue en el reporte. 

Sesiones de Testing

Apptim permite ejecutar sesiones de prueba de 30 minutos y registrar notas, bugs detectados, riesgos encontrados, ideas y to-dos que surjan en la sesión de pruebas.

En cada bug reportado, se puede incluir una captura de pantalla (e incluso editarla) así como también un video relacionado al incidente a modo de evidencia, que Apptim toma de forma automática. El usuario solo debe indicar que desea adjuntar una imagen o un video en el reporte del bug.

Pantalla para reportar bugs

Las versiones Team y Pro de la herramienta permiten al usuario seleccionar dos sesiones y compararlas entre sí. La comparación la hace la herramienta automáticamente y muestra las diferencias en pantalla. Esta funcionalidad es super útil para analizar los resultados de performance, entender como ciertas acciones impactan en el rendimiento y visualizar las tendencias de consumo de recursos.

Comparación de sesiones

Reporte de Performance

Como siempre remarca Fede: toda optimización que no sea sobre el cuello de botella es una ilusión de mejora.

El reporte de Apptim, que se genera de forma automática al finalizar una sesión de pruebas, nos permite visualizar y entender fácilmente dónde se encuentran los cuellos de botella, para poder mejorar y optimizar el rendimiento de la app de la forma más adecuada.

Como mencioné anteriormente, este reporte nos brinda un detalle del consumo que hace la app de los diferentes recursos del dispositivo móvil, mostrando diferentes indicadores. Además, incluye gráficas que muestran la evolución del uso de los mencionados recursos por parte de la aplicación durante el tiempo que duró la sesión de pruebas.

Indicadores de performance en el reporte
Gráficas de consumo de recursos en el reporte

El reporte también incluye un video de la sesión realizada y capturas de pantalla y logs asociados a cada excepción (aun si no se visualizó ninguno durante la sesión), que nos permiten visualizar qué estaba sucediendo en la app al mismo tiempo en que Apptim atrapaba la excepción.

El reporte se puede ver localmente en la PC en la que se ejecutaron las pruebas, pero también lo puedes publicar en tu workspace (en la nube de Apptim) para compartirlo invitando a los usuarios a ese espacio de trabajo, o a través de un link.

Por defecto, todos los reportes publicados en un workspace se pueden compartir a través de un link público. Es decir, cualquier usuario con el link puede acceder a los al reporte sin necesidad de tener una cuenta Pro creada en Apptim.

Para resumir, el reporte incluye:

  • Grabación en video de la pantalla del dispositivo durante la ejecución de la sesión de pruebas.
  • Alertas y advertencias relacionadas a la experiencia de usuario, pintadas en amarillo o rojo según su severidad (siendo el amarillo menos severo que el rojo).
  • Alertas y advertencias relacionadas al consumo de recursos del dispositivo, con umbrales de referencia, pintadas en amarillo o rojo según su severidad.
  • Datos del ambiente de pruebas (info del dispositivo, info de la app, versiones, etc.).
  • Detalle de Crashes/Excepciones con capturas de pantalla asociadas y el minuto exacto de la sesión de pruebas en el que sucedió esa excepción para poder ubicar el momento específico en el video.
  • Detalle del consumo de recursos, con gráficas asociadas.
  • Logs y artefactos descargables recogidos durante la sesión de pruebas.

Por otro lado, la herramienta genera reportes por separado para cada bug registrado por el usuario durante la sesión exploratoria. Estos bugs pueden ser compartidos de forma independiente ya que cada uno tiene su propio link.

Como se mencionó anteriormente, Apptim permite subir a Jira los bugs reportados a través de un simple click.

Reporte de bugs en Apptim
Reportar bug a Jira

Puntos a mejorar

Estoy al tanto de que el equipo de Apptim está trabajando en mejorar la herramienta para hacerla lo más robusta y útil posible. De todas maneras, hay algunas cosas que me gustaría ver en una próxima versión de Apptim:

  • Que nos ayude a entender de principio a fin todas las capas que hay detrás de una acción del usuario en la app, con el fin de mejorar el rendimiento general de la misma.
  • Más descripciones, explicaciones y/o tooltips que ayuden a un mejor entendimiento de los resultados del reporte de performance.
  • Recomendaciones que ayuden a resolver los issues, advertencias y alertas que se muestran en el reporte de performance.
  • Mejorar el modo en que la información está ordenada en el reporte de performance.
  • Mejorar la forma en que se muestran las gráficas en el reporte de performance, con respecto a los colores y las vistas.
  • Métricas y alertas en tiempo real que permitan ver cómo se están usando los recursos del dispositivo en la sesión de pruebas, para ir guiando las pruebas según lo que se vaya detectando en el momento.
  • Permitir que las sesiones de prueba duren más de media hora.
  • Permitir que se agreguen notas, riesgos, ideas y to-dos, una vez que la sesión de pruebas haya terminado.
  • Permitir exportar las notas, riegos, ideas y to-dos a un archivo PDF o compartirlas a través de un reporte web.

Cerrando mi review de Apptim

Desde el punto de vista de Tester de Software, puedo decir que Apptim aporta un enorme valor agregado al proceso de pruebas de apps Android e iOS, sin requerir demasiado esfuerzo por parte del usuario.

En cada reporte se brinda mucha información útil que sirve como insumo para detectar, mitigar y prevenir riesgos y bugs referentes a la performance de las aplicaciones.

Es una herramienta sencilla de incorporar, intuitiva, fácil de usar y que no requiere grandes conocimientos relacionados a performance.

Recomiendo que le des una oportunidad a la herramienta y la uses cuando ejecutes pruebas en aplicaciones móviles nativas. ¡Luego comentame qué te pareció!

One thought on “Review de Apptim: Pruebas de performance en apps nativas

Leave a Reply

Your email address will not be published. Required fields are marked *