Una pregunta frecuente de nuestros alumnos es ¿Cómo probar aplicaciones móviles? En este tutorial, proporcionamos un escenario de prueba / casos de prueba de muestra para probar una aplicación móvil.
Puede ejecutar algunos o todos los casos de prueba según los requisitos de prueba de su dispositivo móvil. Los casos de prueba se organizan según los tipos de pruebas móviles.
- Casos de prueba de pruebas funcionales
- Pruebas de rendimiento
- Casos de prueba de pruebas de seguridad
- Casos de prueba de pruebas de usabilidad
- Casos de prueba de pruebas de compatibilidad
- Casos de prueba de pruebas de recuperabilidad
- Lista de verificación importante
Pruebas funcionales de aplicaciones móviles
La prueba funcional de la aplicación móvil es un proceso de prueba de las funcionalidades de las aplicaciones móviles, como las interacciones del usuario, así como de las transacciones que los usuarios pueden realizar. El objetivo principal de las pruebas funcionales de aplicaciones móviles es garantizar la calidad, cumplir con las expectativas especificadas, reducir el riesgo o errores y la satisfacción del cliente.
Los diversos factores que son relevantes en las pruebas funcionales son
- Tipo de aplicación basada en los usos de la funcionalidad comercial (banca, juegos, social o empresarial)
- Tipo de público objetivo (consumidor, empresa, educación)
- Canal de distribución que se utiliza para difundir la aplicación (por ejemplo, Apple App Store, Google play, distribución directa)
Los escenarios de prueba más fundamentales en las pruebas funcionales se pueden considerar como:
- Para validar si todos los campos obligatorios obligatorios funcionan como se requiere.
- Validar que los campos obligatorios se muestren en la pantalla de forma distintiva a los campos no obligatorios.
- Validar si la aplicación funciona según los requisitos cada vez que la aplicación se inicia / detiene.
- Para validar si la aplicación entra en modo minimizado cada vez que hay una llamada telefónica entrante. Para validar el mismo necesitamos usar un segundo teléfono, para llamar al dispositivo.
- Para validar si el teléfono puede almacenar, procesar y recibir SMS cada vez que se ejecuta la aplicación. Para validar el mismo, necesitamos usar un segundo teléfono para enviar sms al dispositivo que se está probando y donde se está ejecutando la aplicación que se está probando.
- Validar que el dispositivo puede realizar los requisitos multitarea requeridos siempre que sea necesario.
- Para validar que la aplicación permite las opciones de redes sociales necesarias, como compartir, publicar y navegar, etc.
- Para validar que la aplicación admite cualquier transacción de pasarela de pago como Visa, Mastercard, Paypal, etc., según lo requiera la aplicación.
- Para validar que los escenarios de desplazamiento de página se estén habilitando en la aplicación según sea necesario.
- Validar que la navegación entre los módulos relevantes en la aplicación sea según el requisito.
- Para validar que los errores de truncamiento están absolutamente en un límite asequible.
- Para validar que el usuario recibe un mensaje de error apropiado como “Error de red. Inténtelo después de un tiempo ”siempre que haya algún error de red.
- Validar que la aplicación instalada permite que otras aplicaciones funcionen satisfactoriamente y que no consume la memoria de las otras aplicaciones.
- Para validar que la aplicación se reanuda en la última operación en caso de un reinicio completo o un bloqueo del sistema.
- Validar si la instalación de la aplicación se puede realizar sin problemas siempre que el usuario tenga los recursos necesarios y no dé lugar a errores significativos.
- Validar que la aplicación realiza la instalación de inicio automático de acuerdo con los requisitos.
- Validar si la aplicación funciona de acuerdo con el requisito en todas las versiones de Mobile que es 2g, 3g y 4g.
- Realizar pruebas de regresión para descubrir nuevos errores de software en áreas existentes de un sistema después de que se hayan realizado cambios en ellas. También vuelva a ejecutar las pruebas realizadas anteriormente para determinar que el comportamiento del programa no ha cambiado debido a los cambios.
- Para validar si la aplicación proporciona una guía de usuario disponible para aquellos que no están familiarizados con la aplicación.
Casos de prueba de pruebas de rendimiento
El objetivo fundamental de este tipo de pruebas es garantizar que la aplicación funcione de manera aceptable bajo ciertos requisitos de rendimiento, como el acceso de una gran cantidad de usuarios o la eliminación de una parte clave de la infraestructura como un servidor de base de datos.
Los escenarios de prueba generales para las pruebas de rendimiento en una aplicación móvil son:
- Para determinar si la aplicación funciona según el requisito bajo diferentes condiciones de carga.
- Para determinar si la cobertura de red actual es compatible con la aplicación en los niveles de usuario máximo, promedio y mínimo.
- Para determinar si la configuración de cliente-servidor existente proporciona el nivel de rendimiento óptimo requerido.
- Identificar los diversos cuellos de botella de la aplicación y la infraestructura que impiden que la aplicación funcione a los niveles de aceptabilidad requeridos.
- Validar si el tiempo de respuesta de la aplicación se ajusta a los requisitos.
- Evaluar el producto y / o hardware para determinar si puede manejar los volúmenes de carga proyectados.
- Evaluar si la duración de la batería puede permitir que la aplicación funcione con los volúmenes de carga proyectados.
- Para validar el rendimiento de la aplicación cuando la red se cambia a WIFI de 2G / 3G o viceversa.
- Para validar cada uno de los requeridos, el ciclo de la CPU es la optimización
- Para validar que el consumo de batería, fugas de memoria, recursos como GPS, el rendimiento de la cámara está dentro de las pautas requeridas.
- Validar la longevidad de la aplicación siempre que la carga del usuario sea rigurosa.
- Para validar el rendimiento de la red mientras se mueve con el dispositivo.
- Validar el rendimiento de la aplicación cuando solo se requieren fases intermitentes de conectividad.
Casos de prueba de pruebas de seguridad
El objetivo fundamental de las pruebas de seguridad es garantizar que se cumplan los requisitos de seguridad de redes y datos de la aplicación según las pautas.
Las siguientes son las áreas más importantes para verificar la seguridad de las aplicaciones móviles.
- Validar que la aplicación es capaz de resistir cualquier ataque de fuerza bruta, que es un proceso automatizado de prueba y error que se utiliza para adivinar el nombre de usuario, la contraseña o el número de tarjeta de crédito de una persona.
- Para validar si una aplicación no permite que un atacante acceda a contenido sensible o funcionalidad sin la debida autenticación.
- Validar que la aplicación tiene un sólido sistema de protección por contraseña y no permite que un atacante obtenga, cambie o recupere la contraseña de otro usuario.
- Validar que la aplicación no sufre de caducidad de sesión insuficiente.
- Identificar las dependencias dinámicas y tomar medidas para evitar que cualquier atacante acceda a estas vulnerabilidades.
- Para evitar ataques relacionados con la inyección de SQL.
- Para identificar y recuperarse de cualquier escenario de código no administrado.
- Para asegurarse de que los certificados estén validados, ¿la aplicación implementa la fijación de certificados o no?
- Para proteger la aplicación y la red de los ataques de denegación de servicio.
- Analizar los requisitos de almacenamiento y validación de datos.
- Habilitar la gestión de sesiones para evitar que usuarios no autorizados accedan a información no solicitada.
- Para comprobar si algún código criptográfico está roto y asegurarse de que esté reparado.
- Validar si la implementación de la lógica empresarial es segura y no es vulnerable a ningún ataque externo.
- Para analizar las interacciones del sistema de archivos, determine cualquier vulnerabilidad y corrija estos problemas.
- Para validar los controladores de protocolo, por ejemplo, intentar reconfigurar la página de destino predeterminada de la aplicación mediante un iframe malicioso.
- Para protegerse contra inyecciones maliciosas del lado del cliente.
- Para protegerse contra inyecciones malintencionadas en tiempo de ejecución.
- Para investigar el almacenamiento en caché de archivos y evitar cualquier posibilidad maliciosa del mismo.
- Para evitar el almacenamiento de datos inseguros en la caché del teclado de las aplicaciones.
- Para investigar las cookies y prevenir cualquier acto malicioso de las cookies.
- Proporcionar auditorías periódicas para el análisis de protección de datos.
- Investigue los archivos creados a medida y evite cualquier acto malicioso de los archivos creados a medida.
- Para evitar desbordamientos de búfer y casos de corrupción de memoria.
- Analizar diferentes flujos de datos y prevenir vulnerabilidades de estos.
Casos de prueba de pruebas de usabilidad
El proceso de prueba de usabilidad de la aplicación móvil se realiza para tener una aplicación de paso rápido y fácil con menos funcionalidad que una aplicación lenta y difícil con muchas características. El objetivo principal es asegurarnos de que tengamos una interfaz fácil de usar, intuitiva y similar a las aceptadas por la industria que son ampliamente utilizadas.
- Asegurar que los botones tengan el tamaño requerido y sean adecuados para dedos grandes.
- Asegurar que los botones estén colocados en la misma sección de la pantalla para evitar confusiones a los usuarios finales.
- Para garantizar que los iconos sean naturales y coherentes con la aplicación.
- Para asegurarse de que los botones, que tienen la misma función, también tengan el mismo color.
- Para asegurar que la validación para las funciones de acercar y alejar al tocar debe estar habilitada.
- Para garantizar que la entrada del teclado se pueda minimizar de manera adecuada.
- Para asegurarse de que la aplicación proporcione un método para retroceder o deshacer una acción, al tocar el elemento incorrecto, dentro de una duración aceptable.
- Para asegurarse de que los menús contextuales no se sobrecarguen porque debe usarse rápidamente.
- Asegurar que el texto se mantenga simple y claro para que sea visible para los usuarios.
- Asegurar que las oraciones y párrafos cortos sean legibles para los usuarios finales.
- Asegurarse de que el tamaño de la fuente sea lo suficientemente grande para ser legible y no demasiado grande ni demasiado pequeño.
- Para validar, la aplicación solicita al usuario cada vez que el usuario comienza a descargar una gran cantidad de datos que pueden no ser propicios para el rendimiento de la aplicación.
- Validar que el cierre de la aplicación se realiza desde diferentes estados y verificar si se vuelve a abrir en el mismo estado.
- Asegurar que todas las cadenas se conviertan a los idiomas apropiados siempre que haya una función de traducción de idiomas disponible.
- Para garantizar que los elementos de la aplicación estén siempre sincronizados de acuerdo con las acciones del usuario.
- Asegurar que el usuario final reciba un manual de usuario que ayude al usuario final a comprender y operar la aplicación que puede no estar familiarizado con los procedimientos de la aplicación.
Las pruebas de usabilidad normalmente las realizan usuarios manuales, ya que solo los seres humanos pueden comprender la sensibilidad y la capacidad de comodidad de los demás usuarios.
Casos de prueba de pruebas de compatibilidad
Las pruebas de compatibilidad en dispositivos móviles se realizan para garantizar que, dado que los dispositivos móviles tienen diferentes tamaños, resoluciones, pantallas, versiones y hardware, la aplicación debe probarse en todos los dispositivos para garantizar que la aplicación funcione como se desea.
Las siguientes son las áreas más destacadas para las pruebas de compatibilidad.
- Para validar que la interfaz de usuario de la aplicación se ajusta al tamaño de la pantalla del dispositivo, ningún texto / control es parcialmente invisible o inaccesible.
- Asegurar que el texto sea legible para todos los usuarios de la aplicación.
- Para asegurarse de que la función de llamada / alarma esté habilitada siempre que la aplicación se esté ejecutando. La aplicación se minimiza o suspende en caso de una llamada y luego, cuando la llamada se detiene, la aplicación se reanuda.
Casos de prueba de pruebas de recuperabilidad
- Recuperación de fallos e interrupciones de transacciones
- Validación de la situación de recuperación efectiva de la aplicación después de escenarios inesperados de interrupción / caída.
- Verificación de cómo la aplicación maneja una transacción durante un corte de energía (es decir, la batería se agota o un apagado manual repentino del dispositivo)
- La validación del proceso donde se suspende la conexión, el sistema necesita restablecerse para recuperar los datos directamente afectados por la conexión suspendida.
Lista de verificación importante
- Prueba de instalación (si la aplicación se puede instalar en un período de tiempo razonable y con el criterio requerido)
- Prueba de desinstalación (si la aplicación se puede desinstalar en un período de tiempo razonable y con el criterio requerido)
- Casos de prueba de red (validación de si la red está funcionando con la carga requerida o no, si la red es capaz de admitir todas las aplicaciones necesarias durante los procedimientos de prueba)
- Compruebe las claves no asignadas
- Compruebe la pantalla de presentación de la aplicación
- Entrada continua del teclado durante interrupciones y otros momentos, como problemas de red
- Métodos que tratan de salir de la aplicación
- Efecto cargador mientras una aplicación se ejecuta en segundo plano
- Demanda de batería baja y alto rendimiento
- Extracción de la batería mientras se realiza una aplicación
- Consumo de batería por aplicación
- Compruebe los efectos secundarios de la aplicación