Expositores: Florencia Iglesias y Santiago Matalonga
Resumen: Atributos de calidad como la portabilidad, confiabilidad, son especialmente difíciles de testear y aún más de automatizar. La diversidad de dispositivos, sistemas operativos y versiones de estos sistemas operativos, resulta típicamente resulta en limitar el número de dispositivos para los que las pruebas de software pueden garantizar el funcionamiento.
La tecnología Xamarin Test Cloud permite la automatización de casos de prueba para ser ejecutado, en simultáneo, en miles de dispositivos móviles. De esta forma se consigue observar el comportamiento del sistema bajo prueba en diferentes entornos.
En este taller se presenta la motivación para la automatización de casos de prueba para atributos de calidad no funcionales, y se presenta un ejemplo práctico realizado en Xamarin Test Cloud.
4. ¿Qué nos motiva a automatizar?
El mundo móvil sigue en expansión, cada vez más servicios tienen app y
requieren dinamismo, actualización, estabilidad y seguridad
Beneficios
Mayor capacidad de cobertura durante el test
Detección temprana de incidentes
Optimización de las facultades de los desarrolladores y testers
Evitar tareas repetitivas que inducen al error e interfieren con la
experiencia del usuario
7. Retorno de Inversión de Automatización
Fuentes de Beneficios
Ahorros
Mejoras en productividad
Reducción de Defectos
Fuentes de Costo
Costos fijos
Inversiones
Costos variables
ROI = Beneficios - Costos / Costos
8. ROI Caso de Estudio
Problema: Aplicación móvil de consumo masivo. Desarrollada
sobre un dispositivo objetivo. Liberada a los distintos
Marketplace con éxito.
+ Luego de la liberación se comienzan a recibir reportes de
usuarios
9. ROI Caso de Estudio
Análisis de Causa: La diversidad de dispositivos en el
ecosistema hace que no podamos verificar los reportes
dentro del entorno de desarrollo.
Nuestra solución: Identificar una plataforma que nos provea
acceso a los dispositivos físicos que los usuarios reportan el
error.
10. ROI Casos de Estudio
Fuentes de Beneficios
● Gasto y actualización de
dispositivos → 0
● Tiempo de Identificación y cobertura
de dispositivo
● Tiempo de ejecución
○ Horas hombre
○ Concurrencia
Fuentes de Costo
● Tiempo de desarrollo del
caso de prueba
● Alquiler de la plataforma
● Tiempo de análisis de
resultados
ROI = Beneficios - Costos / Costos
11. ROI Casos de Estudio
ROI = Beneficios - Costos / Costos
15. ISO/IEC 25010 - SQUARE
• Beneficios sobre los modelos anterior
• Coordinación de las guías de adopción con las normas de
evaluación de calidad de producto.
• Revisión de las guías para la especificación de requisitos
de calidad de sistemas y productos de software
• Actualización general de los términos de referencia y
definiciones.
17. ISO/IEC 25010 – Modelo de calidad
• Las características y subcaracterísticas son aplicables
a todos los productos y sistemas de software
• Las características son aplicables a sistemas y
servicios
• Las características de calidad son las propiedades
asociadas a los sistemas de software
• Estas están directamente asociadas a medidas
• Las características pueden medirse directamente o
indirectamente mediante la medición de un
conjunto de propiedades asociadas a la característica
22. Xamarin
• Tecnología que permite desarrollo cross-platform en
• IOS
• Android Windows
• Xamarin permite
• Comparar base de código independientes de la
plataforma
• Utilizar C# como lenguaje
23. Xamarin. Elementos de la tecnologia
• Performance Nativa
Xamarin.iOS → Ahead Of Time
(AOT) compilation para binarios
ARM de la Apple’s App Store.
Just-in-time compilation
para
Android
24. Xamarin. Elementos de la tecnología
• Librerías de clase portables (1 Assembly, multiple platforms)
25. Xamarin. Elementos de la tecnología
Xamarin.Ma
c
Xamarin
Studio
Xamarin Test
Cloud
Component Store
Xamarin.iO
S
Xamarin.Android
Xamarin for
Visual
Studio
.NET Mobility
Scanner
26. Xamarin Test Cloud
• Proposito
• Herramienta para el test de aceptación de aplicaciones
móviles nativas
• Proveer soporte para el test de aceptación de Interfaz de
usuario a través de cientos de dispositivos y (varias)
plataformas.
27. Xamarin Test Cloud
• Herramientas
• Calabash – Framework basado en Cucumber sobre Ruby
para la creación de especificaciones ejecutables (Behavior
Driven Development).
• Xamarin.UITest. Framework para escribir casos de prueba
en C# basado en Nunit.
• Test Cloud. Servicio Claud que provee acceso a los
dispositivos físicos donde probar el sistema.
• Xamarin Test Recorder (En Desarrollo). Se propone como
una herramienta para simplificar la creación de los script de
pruebas en Xamarin.UITest
32. Primer Caso de Prueba con
Xamarin Test UI
• Objetivo
• Crear un primer caso de
prueba simple que pueda
ejecutarse en múltiples
dispositivos con Xamarin Test
Cloud