Características de las mejores herramientas de testeo de aplicaciones móviles

Características de las mejores herramientas de testeo de aplicaciones móviles

Hoy en día existen numerosas herramientas de prueba de aplicaciones, algunas específicas para cada entorno (iOS o Android) y otras que facilitan su instalación para todo tipo de sistemas operativos. Tanto para pruebas con usuarios reales como test automáticos. 

BBVAOpen4U
|
11 Abr. 2017

Uno de los elementos esenciales cuando un equipo de desarrollo se enfrenta al lanzamiento de una aplicación nueva es el proceso de testeo. Es importante probar cada extremo del software para evitar cualquier complicación posterior. Cierres inesperados, errores en funcionalidades clave, fallos de usabilidad… cualquiera de estas razones puede ser un motivo justificable para una mala opinión en una tienda de aplicaciones. Hoy en día existen algunas herramientas y plataformas realmente potentes para compartir con terceras personas una versión beta de una aplicación para su testeo: cuántas más personas interactúen, más fácil es detectar los bugs.

Esas pruebas no sólo pueden ser realizadas por usuarios reales (la versión beta de la aplicación se sube a una plataforma, el usuario la descarga y la prueba), sino que ese proceso de testeo para encontrar errores puede automatizarse. Es la forma más eficaz de buscar un testeo automático, con unos requerimientos bien definidos, que permiten probar sin excesivo margen de error la fiabilidad de una aplicación. Este es un listado de las mejores soluciones para comprobar la ausencia de fallos:

1. TestFlight Beta Testing (iOS)

TestFlight es, sin duda alguna, la herramienta de testeo más utilizada por los desarrolladores iOS. No sólo para probar aplicaciones para dispositivos móviles como iPhone o iPad, también en otros productos de la compañía de la manzana como Apple Watch, con su sistema operativo watchOS,  y Apple TV, con su TVOS. La idea es que con una cuenta de correo es posible invitar a cualquier persona para testear una versión beta de una aplicación. Con un límite de 2.000 betatesters.

Para que cualquier usuario pueda probar la versión beta en TestFlight, primero es obligatorio crear un registro en iTunes Connect para la aplicación. Las condiciones para hacerlo son muy reducidas, con el objetivo de que los desarrolladores puedan lanzar proyectos sin problemas y realizar todas las pruebas que deseen con usuarios internos y externos. Para que usuarios externos puedan probar la versión beta, el desarrollador debe facilitar algunos de estos metadatos sobre su proyecto de app:

  • El producto que quiere testar.
  • Una descripción del producto (aplicación).
  •  Correo electrónico de servicio
  • URL de soporte técnico (por si surgiera algún tipo de problema).
  • URL de servicio de márketing o ventas.

Los probadores externos siempre tienen a su disposición la versión beta durante 60 días para su descarga en sus dispositivos. Lo más lógico es que ese tiempo no se agote nunca porque el programador siempre va lanzando versiones de prueba sucesivas a medida que va introduciendo pequeños cambios en la aplicación

2. Crashlytics Beta (iOS y Android)

Crashlytics lanzó en febrero de 2014 una herramienta para probar aplicaciones tanto en iOS como en Android. La solución de testeo se llama Beta. Este lanzamiento llegó un año después de su compra por la red social Twitter. Una de las características de Beta que mejor acogida tiene entre los desarrolladores y que Crashlytics pone en valor con más fuerza es su integración con la mayoría de Entornos de Desarrollo Integrado (IDEs) para profesionales iOS y Android: Xcode, Android Studio, Eclipse

En el caso de iOS, los probadores se suman al testeo de las versiones beta a través del UDID (Unique Device Identifier), el número a partir del cual Apple identifica cada dispositivo de la compañía en manos de un usuario. Con ese identificador es muy sencillo dar de alta a cada usuario que se quiere convertir en un betatester. En el caso de Android, lo único que es necesario es instalar la aplicación Beta en el dispositivo y, a partir de ahí, se podrán descargar cada versión nueva y probarla. Beta facilita a los desarrolladores un panel de control donde puede ver el proceso de uso de la versión beta por cada uno de los probadores. Así es posible saber quién descarga cada una de las versiones nuevas, quién es más activo en el testeo del producto… En cierta forma, Beta permite un control exhaustivo de su actividad.

Fruto de esa actividad, el desarrollador podrá ver en el tablero de Crashlytics Issues todos los problemas que están experiementando los probadores en el uso del software. Resultados en el rendimiento, cierres inesperados… todo tipo de métricas.

3. Google Play Developers Console (Android)

Cualquier desarrollador de aplicaciones Android conoce de sobra la consola para desarrolladores Google Play. La API de Google Play permite, desde julio de 2014, que los desarrolladores puedan gestionar todo tipo de servicios para sus aplicaciones: entre ellos administrar sin problemas la publicación de productos dentro de la tienda y todo tipo de ventajas derivadas de esa publicación. Por ejemplo, notificaciones por email, notificaciones in-app, sugerencias de optimización en fase de pruebas, estadísticas de ingresos, exportación de comentarios de unos productos a otros

Si el desarrollador está pensando lanzar una aplicación no gratuita o quiere implementar en ella un comercio electrónico, es indispensable que disponga de una cuenta comercial dentro de la consola de Google Play con una cuota de inscripción de 25 dólares. Para este tipo de clientes, el servicio de datos de Google tiene un coste.

Dentro de esta consola, los desarrolladores Android pueden dar de alta una versión beta o alpha de su aplicación, con algunos elementos indispensable: para participar en una prueba de una aplicación es necesario disponer de un correo de Google. Tras el lanzamiento de un APK alpha o beta para su testeo por los probadores, es posible que la versión no esté disponible para el usuario hasta pasadas algunas horas.

4. Ubertesters (iOS y Android)

Ubertesters ofrece tanto: una herramienta de gestión de calidad como un servicio de pruebas globales para que puedas acceder a muchos usuarios reales con dispositivos reales para probar la aplicación móvil en condiciones reales. Esta solución pone a disposición de sus clientes lo que ellos llaman crowdtesters, profesionales de todo el mundo que se ponen a disposición de una empresa para probar sus nuevos productos. Son pruebas realmente útiles porque al final este tipo de usuarios serán los que consumirán posteriormente el producto, en condiciones muy similares en las que la app se someterá a pruebas.

Características principales: 

  • Asegura la distribución de la estructura a individuos seleccionados o a grupos predeterminados.
  • Gestión en tiempo real de la construcción, incluyendo el control de acceso a la construcción.
  • Grupos de pruebas A / B.
  • Función de grabación de video para ver los pasos exactos realizados por el probador de la app.
  • Captura de pantalla y edición desde la propia aplicación probada
  • Herramienta de generación de informes de fallos con grabación de vídeo y seguimiento.
  • Soporte para casos de prueba
  • Extensión del equipo QA con testers certificados en todo el mundo.

Ubertesters ofrece probadores en más de 100 países, con una infinidad de dispositivos móviles distintos, con todas las versiones posibles de sistemas operativos… La idea es que el feedback que salga de toda esa prueba internacional sirva para lanzar un producto totalmente fiable. Son pruebas de todo tipo: testeo de funcionalidades, testeo de usabilidad, prueba de interrupción, ... Es una buena solución para descartar errores graves en todos los elementos clave del producto. 

5. Robotium (Android)

Robotium es un marco de desarrollo que permite realizar pruebas automáticas para aplicaciones Android. De alguna forma es un entorno de prueba de software para aplicaciones móviles, como podría serlo Selenium para páginas web. Las pruebas que el desarrollador debe escribir para hacer los tests automáticos (concretamente las pruebas unitarias) usan Java como lenguaje de programación. La codificación de estas pruebas no es nada sencilla, ni requiere poco tiempo. Normalmente exige desarrolladores de aplicaciones con una amplia experiencia en ese campo.

Robotium es lo que se conoce como una herramienta de testing blackbox o pruebas de caja negra: no necesitan acceder al código fuente del producto para comprobar que las funcionalidades no tienen problemas reseñables, son las que permiten que un testeador (en este caso su desarrollador) pueda observar cómo un módulo específico de su aplicación funciona con la entrada de un conjunto de datos y observa la salida de ese conjunto de datos sin acceder a lo que sucede en el interior.  

Si te interesa el testeo en APIs, entra en este artículo.

¿Te interesan las APIs financieras? Visita todas las que te ofrece BBVA

¡Suscríbete!

Recibe nuestro boletín semanal. No te pierdas nuestros trucos, consejos, artículos y los eventos más innovadores.