Blog

Pruebas de software en una app móvil: guía introductoria

El desarrollo de aplicaciones móviles está en constante crecimiento. Cada vez más son las empresas que deciden desarrollar apps de calidad y con buena UX/UI, para mejorar la imagen de marca o incrementar sus ventas. Este post presenta una introducción al testing móvil, considerando los diferentes tipos de pruebas y los incidentes comunes que se pueden presentar.

El impacto de la App Store y Android Market hace más de una década, marcó el comienzo de una nueva era: la era de las aplicaciones móviles. Miles de desarrolladores comenzaron a crear aplicaciones para ambas plataformas.

Con la tecnología 5G desplegándose en todo el mundo y la pandemia reinventando la forma en que vemos la comunicación móvil, hoy el internet móvil se encuentra en constante crecimiento, con una población mundial de 4280 millones. En este sentido, Latinoamérica representa un 53.92% del total del tráfico de Internet móvil total a junio de 2022.

Asimismo, el número de descargas de aplicaciones móviles en todo el mundo ha aumentado constantemente: 204 mil millones de descargas en 2019. Es decir, un crecimiento de casi el 50% desde 2016.

No. de descargas de aplicaciones móviles entre 2016 y 2021 a nivel mundial

La tasa de consumo móvil ha alcanzado niveles sin precedentes. A medida que la tecnología de las aplicaciones mejora, el gasto global por parte de los consumidores aumenta. Sin embargo, esto no significa que todas las apps alcanzaron el éxito.

¿Por qué Testing Móvil?

Para asegurar una buena experiencia del usuario digital, es crucial realizar pruebas de software en aplicaciones móviles. Veamos por qué:

  1. Un producto libre de errores aumenta la probabilidad de éxito: más descargas e ingresos.
  2. Reduce el riesgo del proyecto: Desarrollar apps es costoso y puede generar grandes pérdidas si el producto falla.
  3. Un producto de calidad y con una buena UX/UI ayuda a potenciar la imagen de marca y posiciona a la empresa como un proveedor de software fiable y atractivo.
  4. Garantiza la compatibilidad con distintos dispositivos y sistemas operativo (iOS y Android).
  5. Incorporar QA para detectar incidentes en fases tempranas puede ahorrar costos a futuro.

Entonces, ¿cómo los profesionales de TI y las empresas deben responder cada vez más rápido a las cambiantes demandas tecnológicas? Este post busca ser una guía para iniciarse en testing móvil, considerando sus diferentes tipos y los incidentes comunes que se pueden presentar.

Tipos de Aplicaciones Móviles

Las apps móviles son más complejas de probar, a diferencia de las apps web de escritorio. Se dividen en tres tipos: nativas, híbridas y web.

Aplicaciones Nativas

Una app nativa es la que se ejecuta en el dispositivo de manera más rápida y avanzada en cuanto a las funciones, por lo que se debe descargar antes de usar. Dado que son aplicaciones específicas para una plataforma, se deben desarrollar utilizando IDEs y lenguajes específicos.

Android utiliza lenguajes como Java o Kotlin y Android Studio, o Eclipse como IDE; por su parte, Apple utiliza Objective-C o Swift y XCode como IDE. Algunos ejemplos de aplicaciones Nativas son Google Maps, LinkedIn, Twitter, Telegram, PokemonGo, etc.

Ventajas y desventajas de las aplicaciones nativas

Aplicaciones Web

Una aplicación web es a la que se puede acceder a través de cualquier navegador móvil, es decir que no se requiere descarga para su uso. Generalmente, se crea utilizando JavaScript, CSS y HTML5. WordPress o Medium son ejemplos de este tipo de app.

Ventajas y desventajas de las aplicaciones web

Aplicaciones Híbridas

Una aplicación híbrida combina las características de la app web y nativas, y usualmente es desarrollada con JavaScript, CSS y HTML5 y debe ser descargada para su uso. Al ser empaquetada en un entorno nativo, se puede utilizar el mismo código para diferentes plataformas. Algunos ejemplos de aplicaciones híbridas son Facebook, Instagram, Uber y Slack.

Ventajas y desventajas de las aplicaciones híbridas

Consideraciones para Probar Apps Móviles

¿Cuál es el tipo de App a probar?

El primer paso es identificar si es una app nativa, híbrida o web para determinar qué tipos de pruebas se pueden realizar.

¿En qué versiones del Sistema Operativo funcionará la App?

Segundo, revisar qué versiones de iOS y Android se deben cubrir. Esta información deberá ser entregada por el cliente o por el equipo de desarrollo.

¿En qué dispositivos se probará la App Móvil?

Independiente del tipo de app, lo ideal es contar con un set dispositivos móviles físicos o reales de cada una de las plataformas existentes, para probar principalmente la experiencia de usuario. Contar con un set puede ser muy costoso, por lo que se recomienda ampliar la cobertura de dispositivos con simuladores y emuladores.

Hay que considerar que los simuladores y emuladores son aplicaciones limitadas, en cuanto a testing, por lo que no se puede probar integralmente la experiencia del usuario. Un Simulador como XCode solo permite simular dispositivos con sistema operativo iOS, mientras que Android Studio actúa como el dispositivo configurado emulando su sistema operativo y su hardware.

Otra alternativa son herramientas de Cloud Testing, aunque son de pago, Sauce Labs y Browser Stack son las más conocidas. Al ser herramientas que se encuentran en la nube, permiten testear apps a través del servicio Real Device Cloud, emuladores/simuladores móviles y pruebas de aplicaciones en vivo.

¿Qué equipos elegir para el set de prueba?

Este artículo de BrowserStack sugiere cuáles son los dispositivos ideales para probar y tener la máxima cobertura posible. Por ejemplo, para una app de hasta 15.000 visitantes únicos/mes recomienda:

  • iPhone 13 15.0
  • iPhone 12 Pro Max 14.0
  • Samsung Galaxy S21 11.0
  • Samsung Galaxy A51 10.0
  • Samsung Galaxy A10 9.0
  • Xiaomi Redmi Note 8 9.0
  • iPad 8th

Con el anterior set de dispositivos se puede tener la siguiente cobertura de mercado:

  • iOS: 91%
  • Android: 70%
  • Resolución: 61%
  • Tamaño: 74%
  • Versión: 2018, 2019, 2020 y 2021

¿Dónde descargo la aplicación móvil?

En los siguientes sitios web se pueden obtener las versiones para probar apps nativas e híbridas:

Testflight

Testflight está disponible para descargar solamente en la App Store a través de una invitación.

Visual Studio App center

Visual Studio App Center es una plataforma donde se pueden cargar y descargar aplicaciones. Sus herramientas están diseñadas para aplicaciones Android e iOS construidas en Swift, Objective-C, Java, React Native, UWP y Xamarin. 

Almacenamiento en la Nube (solo para Android)

La APK de Android no tiene limitación en donde puede ser publicada, por lo que se puede utilizar algún servicio de almacenamiento en la nube como Google Drive, One drive o Dropbox.

Diseños de Interfaces o Mockups

Los diseñadores utilizan herramientas con un sin fin de funcionalidad como Zeplin, Figma, Adobe XD o InVision para publicar el diseño de cada pantalla de la app móvil.

¿Cómo capturar evidencias en un dispositivo móvil?

En Android, la funcionalidad de capturar pantalla es nativa. Esta combinación varía dependiendo del fabricante. Revisa aquí cómo hacer screenshots de algunas marcas.

¿Cómo hacer capturas de pantalla en teléfonos Android?

La funcionalidad de Grabar Pantalla no es nativa de Android. Algunas marcas como Samsung, Xiaomi, Huawei, Honor, OPPO o Realme la incluyen. Revisa cómo hacerlo aquí

Si el dispositivo Android de pruebas no tiene esta funcionalidad, revisar las siguientes aplicaciones: Screen Recorder, Vysor y HiSuite (HUAWEI).

En iOS la funcionalidad de capturar pantalla es nativa y depende del modelo de iPhone:

La funcionalidad de grabar pantalla también es nativa de iOS desde iOS 11 y se realiza así:

¿Cómo grabar pantalla en teléfonos iOS?

Tipos de Pruebas de Software Móviles más populares

Te compartimos los ocho tipos de pruebas fundamentales para probar una app mobile:

1. Funcionalidad

Las pruebas funcionales buscan asegurar que la aplicación móvil funcione según lo indicado en los requerimientos y/o historias de usuario. Algunas de las principales funcionalidades a probar son:

Registro/Login

  • Verificar que el usuario pueda registrarse e iniciar sesión.
  • Verificar la integración con las aplicaciones como Facebook, Twitter, Snapchat o Google.

Modo vertical y horizontal

  • Verificar si la App tiene activado la opción landscape.

Acciones Básicas, opciones del menú, títulos, textos y botones

  • Asegurar que todos los botones, enlaces y otros elementos de la Interfaz de Usuario (IU) funcionen como se espera.
  • Revisar las integraciones con otras aplicaciones, como por ejemplo de pago.
  • Probar los formularios, verificar que la entrada está validada (campos obligatorios vs. campos opcionales).

Notificaciones y mensajes de error/éxito

  • Comprobar que las notificaciones push se procesen correctamente.

Gestos básicos

  • Como apoyo a los Gestos Básicos, Luke Wroblewski, Director de producto en Google, creó la Guía ilustrada referencial con los diferentes gestos que se pueden realizar en pantallas táctiles.
Guía ilustrada referencial de gestos básicos en pantallas táctiles de Luke Wroblewski, Director de producto de Google

Incidentes comunes

  • Integración con redes sociales en el Registro y Login.

A veces después de “registrarse” o “iniciar sesión un usuario” no se retorna a la app, sino que se queda en las mismas RR.SS. Se recomienda probar estos escenarios con las apps de RR.SS instaladas y desinstaladas.

  • Habilitar la opción de rotar pantalla

En ocasiones, puede suceder que el contenido no se adapta a modo Landscape, ya que no está configurado.

  • Realizar un gesto Básico en pantalla

Puede que al intentar realizar algún gesto la app se rompa. Esto se debe a que el gesto no está configurado correctamente.

2. Usabilidad

El objetivo de las pruebas de usabilidad es garantizar que se construya una aplicación móvil intuitiva y fácil de usar. Es recomendable incorporar las pruebas de aceptación de usuario (UAT) desde que se liberan los mockups.

Nuestro rol como testers es ayudar a coordinar, preparar guiones de pruebas y orientar a los usuarios para obtener el mejor feedback posible para determinar qué decisiones tomar con respecto a la app, y si es factible lanzarla al mercado o ejecutar algunos cambios antes del release.

3. Conectividad

Las aplicaciones web no funcionan sin conexión y la misma regla aplica a las apps web móviles. Se debe probar si funcionan bien frente a diferentes velocidades de conexión a internet.

Cuando se trata de apps nativas y algunas híbridas, es fundamental verificar si una aplicación funciona correctamente en el modo offline o modo avión, y cómo funciona con 3/4/5G o wifi.

Los posibles escenarios a probar cómo se comportará la conexión de la app son:

  • Red de datos de un operador. 
  • Red wifi.
  • Cuando se pierde la conexión.
  • Cuando la señal es débil.

Incidentes comunes

  • Cuando se pierde la conexión a internet la app no muestra una alerta

La app no informa al usuario que se perdió la conexión.

  • Cuando una app está conectada a la red de datos de un operador y pierde conexión

La app no alerta esta situación y queda en un estado de loop, esperando respuesta del servidor.

4. Performance

Las pruebas de performance ayudan a evitar los tiempos de inactividad en la app y mejoran su confiabilidad. Su objetivo es garantizar que funcione correctamente bajo diferentes cargas de trabajo, y ante las más altas exigencias de tráfico.

Nadie quiere esperar, y muchos usuarios desinstalan una aplicación si se inicia lentamente, o bien, si tarda demasiado en cargar el contenido, por lo que se recomienda:

  • Contabilizar el tiempo desde que se abre la app hasta que se muestra la primera pantalla, no debe superar los 2 segundos. 
  • Verificar el consumo de batería.
  • Chequear si se sobrecalienta el dispositivo. 
  • Revisar el uso de memoria.

Los escenarios indicados anteriormente se pueden probar al emplear un dispositivo móvil físico de pruebas. No se necesita ser un experto en performance para alertar alguna de estas situaciones.

Para ejecutar las pruebas de performance recomendamos Apptim, una herramienta que permite fácilmente analizar el consumo de recursos de aplicaciones móviles nativas en dispositivos reales, ayudándo a mitigar el riesgo de que ciertos inconvenientes de asociados al rendimiento lleguen a producción.

5. Interrupciones

Las pruebas de interrupción aseguran que la aplicación móvil funcione como se espera cuando se encuentre ante situaciones abruptas o inesperadas, por ejemplo una llamada o una notificación push mientras usa la app.

Algunos de los posibles escenarios que podemos probar son:

  • Recibir o enviar un SMS.
  • Realizar o recepcionar llamadas.
  • Apagar o reiniciar el dispositivo.
  • Recibir una alerta o notificación.
  • Interacción de la app con otras.

6. Compatibilidad

Para las pruebas de compatibilidad es recomendable crear una estrategia de pruebas de dispositivos combinada (mix de dispositivos físicos y reales). Independiente del tipo de aplicación, el diseño debe ser responsivo.

Al igual que las de escritorio, las apps web móviles se deben probar en varios navegadores, como Google Chrome, Safari, Firefox, Edge, Opera y Samsung. Se debe definir qué versiones del sistema operativo soporta la aplicación móvil y probar:

  • Cómo se comporta en diferentes versiones del sistema operativo (iOS y Android).
  • Cómo funciona en diferentes dispositivos móviles de especificaciones de hardware.
  • Verificar si se ve bien y si funciona sin problemas en diferentes resoluciones y tamaños de pantalla.

Incidentes comunes

  • La app no es responsiva: no se adapta correctamente a pantallas más pequeñas.
  • El contenido no se visualiza correctamente: Los campos de la página se desconfiguran en un navegador y SO específico.

7. Descarga, Instalación y Actualización

Hasta la aplicación móvil más extraordinaria no es útil si no puede descargarse, instalarse o actualizarse sin inconvenientes. Por tanto, se debe verificar lo siguiente:

  • ¿Se puede descargar la app?
  • ¿Cómo se comporta la app durante la instalación, desinstalación y reinstalación? ¿Se presentó alguna interrupción?
  • ¿Se puede actualizar la app fácilmente? ¿Los datos almacenados son consistentes después de la actualización?
  • ¿Se puede actualizar la app cuando existen múltiples updates disponibles? ¿Cómo se comporta cuando otras aplicaciones móviles se están actualizando?
  • ¿La app funciona correctamente después de actualizar el sistema operativo?

Incidentes comunes

  • La app no funciona luego de actualizar el SO del dispositivo móvil.

8. Localización

Las pruebas de localización aseguran que la aplicación móvil funcione como se espera en diferentes mercados, países y regiones. Algunos de los escenarios que podemos probar son:

  • Verificar que las traducciones sean correctas y que no sean generadas automáticamente.
  • Comprobar que la app muestre la hora correctamente en diferentes zonas horarias.
  • Confirmar que los textos y los elementos de la interfaz se vean y funcionen bien en diferentes idiomas.

Incidentes comunes

  • En una app las traducciones son generadas automáticamente. El texto en otro idioma autogenerado no entrega el mensaje correcto.

¡Síguenos en LinkedInTwitterFacebookInstagram y Youtube para ser parte de nuestra comunidad y aprender más sobre pruebas móviles!


¿Buscas un partner para lanzar al mercado una aplicación de calidad? ¿Necesitas asesoría en mobile testing?

Nuestro equipo puede ayudarte a ejecutar las pruebas adecuadas para cada entorno (iOS o Android), verificando su funcionamiento en diversas plataformas y dispositivos, para proporcionar a tus clientes una experiencia positiva. Conoce aquí nuestro servicio de pruebas de software en aplicaciones móviles y ponte en contacto con nuestros expertos.


Otros contenidos relacionados

Aplicaciones Móviles: ¿Cómo impulsan la Economía Digital?

¿Qué es la Accesibilidad Móvil y por qué es importante?

Diseñar Productos Digitales Accesibles y no testearlos, es solo una buena intención

49 / 256