Para definir un plan de testing de aplicaciones móviles, se debe considerar realizar pruebas en diferentes sistemas operativos, dispositivos, tamaños de pantalla, navegadores, y conexiones a Internet. Asimismo, es importante utilizar herramientas de emulación y simulación, pero siempre realizar pruebas finales en dispositivos reales. El plan deberá incluir una matriz para priorizar los dispositivos a probar en base a factores como el fabricante, resolución y recomendaciones de negocio.
4. El desafío del testing de
aplicaciones móviles
El testing de aplicaciones moviles es diferente y
más complejo que el testing de aplicaciones de
escritorio y el de sitios web.
Las aplicaciones móviles necesitan ser testeadas
en una variedad de dispositivos y SO
5. El desafío del testing de
aplicaciones móviles
En distintas circunstancias
Y con diferentes tipos y
conexiones de Internet
7. Aplicaciones Nativas
Este tipo de aplicaciones están hechas para ejecutarse en un dispositivo y sistema operativo
específico.
Permiten emplear todos los sensores y elementos del teléfono: cámara, gps, agenda, etc…
Se instalan a través de una tienda de aplicaciones (Google Play o Apple App Store).
Ventajas:
Experiencia de usuario sea la más completa.
Además del total acceso a los elementos del
teléfono
No requieren de conexión web para ser
ejecutadas. Puede ser usada offline.
Desventajas:
Son desarrolladas para un SO específico
Se necesitan desarrolladores con
conocimientos específicos de la plataforma
8. Aplicaciones Web Móviles
Las aplicaciones web móviles, a diferencia de las aplicaciones nativas, se ejecutan dentro del
navegador del teléfono. Estas aplicaciones están desarrolladas con HTML, CSS y Javascript.
Ventajas:
Se pueden ejecutar en múltiples dispositivos
evitando así las complejidad de tener que
crear varias aplicaciones.
El proceso de desarrollo es más sencillo ya
que emplean tecnologías ya conocidas.
Estas aplicaciones se pueden encontrar con
los tradicionales buscadores.
No necesitan de la aprobación de ningún
fabricante para ser publicadas.
Desventajas:
Los accesos a los elementos del teléfono son
limitados.
No se pueden vender en los market place.
La mayoría de las aplicaciones no funcionan
sin conexión a Internet
9. ¿Por qué el testing de aplicaciones móviles
es diferente?
El desafío del testing de aplicaciones móviles puede ser llevada a cabo efectivamente
definiendo una buena estrategia de testing:
Los siguientes puntos deberían ser incluídos en el Test Plan:
Ambiente
Aplicación
Interrupciones
Dispositivos
Marcas
Redes
11. Plan de Testing
Antes de empezar con el testing tenemos que definir :
Sistemas operativos
Dispositivos y pantallas a probar
Ambientes: Beta, Release, Producción
12.
13. Plan de Testing
Antes de empezar con el testing tenemos que definir :
Fuente: https://developer.apple.com/support/app-store/
14. Plan de Testing
Versiones de Sistema Operativo:
Fuente: https://developer.android.com/about/dashboards/index.html
15. Plan de Testing
Nativas:
El testing comienza con la instalación de la aplicación y el acceso a la misma
Se debe tener en cuenta testear usabilidad
Distintos sistemas operativos y versiones
Distintos dispositivos
Interrupciones
Generalmente las aplicaciones acceden a APIs. Es necesario testear esas conexiones.
16. Plan de Testing
Web:
Se necesita testear en los diferentes browser:
Safari en IOS
Android soporta muchos browsers, pero el más importantes es: Chrome.
IE en Windows phone
Se requiere testear la conectividad a Internet
17. Plan de Testing
Emuladores:
Es un programa diseñado que imita al hardware o a un sistema operativo con el objetivo
final de ejecutar un programa, aplicación, software, etc. sobre éste.
En el caso de Android, el emulador lo que hace es recrear el hardware de un móvil para
hacer funcionar el SO Android sobre él.
18. Plan de Testing
Simuladores:
El simulador es una aplicación que se ejecuta en un Mac, tiene acceso a los recursos de la
computadora, incluyendo la CPU, la memoria y conexión de red.
El simulador de iOS es una herramienta útil, y no debe ser la única manera de probar una
aplicación.
19. Plan de Testing
Diferencia entre Emulador y Simulador:
A diferencia de un simulador, que sólo trata de reproducir el comportamiento del
programa, un emulador trata de reproducir de forma precisa lo que se desea (videojuego,
aplicación y sistema operativo) de manera que este funcione
como si estuviese siendo usado en el aparato original
20. Plan de Testing
Testing con Emuladores:
Los emuladores pueden ser muy útiles para cubrir una amplitud de dispositivos, sin embargo, es
importante mantener las siguientes excepciones:
1. No todas las actividades se pueden emular con realismo, como cambiar las conexiones de red, o
tomar una foto o vídeo.
2. 2. Debido a la menor potencia del dispositivo y la memoria, su aplicación podría presentar un
rendimiento más lento en general cuando se ejecuta en un dispositivo real (en lugar de en un
emulador en tu computadora potente).
Importante: No asumir que sólo porque su aplicación funciona perfectamente en un emulador, esta no
tendrá problemas en un dispositivo real.
En general, es una buena idea de utilizar una combinación de dispositivo real y emulador
21. Plan de Testing
User Agent:
Los browsers de escritorio tienen herramientas que permiten simular múltiples browsers
de dispositivos móviles, lo que es muy útil al momento de testear un sitio web responsive,
ya que permite probarlos en distintas versiones y a bajo costo.
El uso de User agents no reemplaza el testing en dispositivos móviles, pero pueden usarse
para probar en distintos tamaños de pantalla.
22. Plan de Testing
Nativas: Testing en la nube
Dispositivos reales en la nube
Variedad de dispositivos
Selección de dispositivos:
Opciones:
• Xamarin
• TestDroid
• Google Cloud Test Lab
23. Plan de Testing
Utilización de matriz de priorización de dispositivos:
Definir los parámetros de importancia:
Los parámetros son de importancia los factores que influyen en la importancia de
hardware y combinaciones de software. Podemos asignar las prioridades relativas
basadas en el alcance del proyecto. Por ejemplo, si el ámbito es iPhone y Android, no
habrá ninguna calificación relativa para Windows.
Si estamos construyendo una aplicación web para móviles, el sistema operativo no tendrá
mucho peso, ya nos ocuparemos principalmente de la versión del navegador .
24. Plan de Testing
Utilización de matriz de priorización de dispositivos:
Algunos de los factores que influyen en la importancia de esta combinación son:
Fabricante
Resolución
Relación de aspecto
Recomendación de negocio para llevar a cabo pruebas o conseguir estadísticas para un
dispositivo o sistema operativo particular.
25. Plan de Testing
Nativas:
iPad Matrix iPad mini IOS 9.3 iPad 2 IOS 8.4 iPad 3 IOS 8.0.2 iPad Air 2 IOS 9.2.1 iPad 4 IOS 9.3
26. Resumen
Para definir el plan de Testing debemos tener en cuenta:
Utilizar Emuladores/Simuladores
Uso herramientas como User Agent
Uso de herramientas para Test Cloud
Realizar el testing final en Dispositivos reales