El testing de aplicaciones mobile es uno de los grandes desafíos que se presenta hoy en día por la diversidad de dispositivos y configuraciones existentes. Asegurar que la aplicación funcione en todos los dispositivos, que sea rápida cuando la utilizan muchas personas y que sea segura, son las inquietudes e incertidumbres que nos atacan.
¿Qué necesitamos saber? ¿En qué herramientas nos podemos apoyar? ¿Qué hay de nuevo con respecto al testing de los sistemas que venimos probando? ¿Qué pasa con la usabilidad, cómo la probamos? Estas y otras preguntas son las que estaremos abordando en esta charla, compartiendo nuestras experiencias e investigación al respecto.
4. ¿Por qué laburás en testing?
¿No conseguiste otra cosa mejor?
• Es aburrido
• Es repetitivo
• No tiene desafíos
• Es el trabajo para el
mal programador
6. Hablemos de…
• Mobile testing
– Performance
– Usabilidad
– Testing basado en riesgos
El testing no es aburrido
No es repetitivo
Tiene grandes desafíos
9. Usuarios acostumbrados a usar el celular en todo
momento y a exigir cada vez más velocidad, usabilidad,
etc.
Los usuarios afectan el mercado, comentarios y
calificaciones en GooglePlay o AppStore.
25. Performance – Server Side
• Simulación de carga
• Concurrencia
• Usuarios virtuales
26.
27.
28.
29. Servidor Web
ModellerModeller
¿Cómo se prepara un
UV?
Http - RequestHttp - Responsegrabar
1
Seabre
1.1
Se
abre
1.2
Acciones
2
Terminar de grabar
3
3.1
Tenemos el script
Gateway
(Proxy)
Browser
Http - Request
Http - Response
Http - Request
Http - Response
30. Automatización en Mobile
• Por lo general es más fácil que en web
– Invocación a servicios REST
• Viajan menos datos, menos para parametrizar
31. Ejecución – Plan de
Pruebas
• BaseLine
– Mejor tiempo posible
– Iterativo para tener datos estadísticos
• Escenario
– Incremental
– Comenzar con un 20% de la carga
– Escalar hasta llegar al 100%
Servidor WebServidor Web
Servidor WebServidor Web
35. ¿Qué es la usabilidad?
La usabilidad es la disciplina
que se encarga de construir
ese intangible que hace que
las distintas funciones de
algo puedan ser utilizadas
por los usuarios “sin
inconvenientes”, con la
menor dificultad posible.
41. Checklist
• Arranquemos con las heurísticas de Nielsen
1. Visibilidad del contexto del sistema.
2. Relación entre el sistema y el mundo real.
3. Control y libertad del usuario.
4. Consistencia y estándares.
5. Prevención de errores.
6. Reconocer es mejor que recordar.
7. Flexibilidad y eficiencia de uso.
8. Estética y diseño minimalista.
9. Ayudar a los usuarios a recuperarse de
errores.
10. Ayuda y documentación.
42. Hablemos de…
• Mobile testing
– Performance
– Usabilidad
– Testing basado en riesgos
46. Selección de dispositivos
• Análisis de riesgo:
– ¿Cuáles son los más usados?
– ¿Cuáles son los que tienen mayor probabilidad de falla?
47. Análisis de riesgo
• Esto debemos analizarlo según
– Sistemas operativos
• Android, iOS, Blackberry, etc.
• Para cada uno, sus versiones.
– Tamaños de pantalla
– Fabricantes
• Aplica en especial para Android
53. ¿De dónde los saco?
• ¿Cada empresa debería tener su laboratorio?
– Bastante ineficiente y caro.
– Cada empresa tendría una cantidad de celulares (alto
costo) y no los usarían todo el tiempo.
• Alternativa:
– Compartir.
55. Open Device Lab
• Donaciones de
particulares
• Convenios con
Movistar e Intel
• Celulares a
disposición GRATIS
56. Cloud de celulares
• Gran variedad de dispositivos.
• Cómo funciona:
1. Elegir dispositivo.
2. Instalar la app bajo pruebas en el dispositivo remoto.
3. ¡Probar! Se tiene control total.
57. Cloud de celulares
• Consideraciones
– Se paga por uso.
– Un poco lento.
– Se usa el mouse.
59. Cobertura y tiempo
• Se puede considerar la cobertura en el tiempo.
– Ejemplo: ejecutar en distintos browsers.
– Ejecutar algunas funcionalidades en Internet Explorer,
otras en Firefox y otras en Chrome.
– Para el siguiente ciclo de pruebas se toman distintas
combinaciones.
• La cobertura se mejora en el tiempo.
60. Cobertura y tiempo
Fecha 1 (v1) Fecha 2 (v1.1) Fecha 3 (v2) Fecha 4 (v2.5)
Suite Prioritaria IE, FF, Ch, OP IE, FF, Ch, OP IE, FF, Ch, OP IE, FF, Ch, OP
Suite 1 IE FF Ch OP
Suite 2 FF Ch OP IE
Suite 3 Ch OP IE FF
suite 4 OP IE FF Ch
IE = Internet Explorer
FF = Firefox
Ch = Chrome
OP = Opera
Mismo concepto aplicable a
• Sistemas operativos
• Dispositivos móviles
• Etc.
61. Versión 1
Test Suite
Critica
Todos los
dispositivos
Test Suite 1 iPad Mini
Test Suite 2 iPhone 5S
Test Suite 3 Galaxy Tab
Test Suite 4 Xperia
Test Suite 5 ACE
Versión 2
Todos los
dispositivos
ACE
iPad Mini
iPhone 5S
Galaxy Tab
Xperia
Versión 4
Todos los
dispositivos
Galaxy Tab
Xperia
ACE
iPad Mini
iPhone 5S
Versión 3
Todos los
dispositivos
Xperia
ACE
iPad Mini
iPhone 5S
Galaxy Tab
Tiempo
Versión 5
Todos los
dispositivos
iPhone 5S
Galaxy Tab
Xperia
ACE
iPad Mini
Cobertura y tiempo
62. S5
Nexus
4
HTC
One
Test 1 %
Test 2 %
Test 3 %
S5
Nexus
4
HTC
One
Test 1 %
Test 2 %
Test 3 %
S5
Nexus
4
HTC
One
Test 1 %
Test 2 %
Test 3 %
Ejecución 1 Ejecución 2 Ejecución 3
Cobertura y tiempo