Dynamics saturday madrid 2019 avanade dynamics saturday madrid 2019 2019.05.25
1. - Mayo 2019
Pruebas de negocio
a demanda D365FO
• Gustavo Vivancos
• Oscar Tirado
2.
3. Dynamics Saturday Madrid
• Gustavo Vivancos
• Consultoría de negocio ERP desde 2005
• Apasionado de los retos y la Transformación
Digital
• La tecnología es un medio, no el fin
• Las personas primero
4. Dynamics Saturday Madrid
• Oscar Tirado
• Consultor en Avanade de Dynamics 365
• Funcional del área logística
• Explorando, aprendiendo, innovando
5. Introducción
El Testing siempre ha sido parte importante de los proyectos de D365FO y en el
mantenimiento del ciclo de vida de las implantaciones.
Las pruebas de negocio son el punto donde el usuario da el visto bueno a la
funcionalidad implantada.
Se trata de ejecutar las pruebas de regresión de forma automatizada, a
demanda, tantas veces como sean necesario para:
Reducir los tiempos de testing
Reducir los costes evitando incidencias
Ganar margen de tiempo ante posibles incidencias en cada actualización
…
Microsoft acaba de introducir OneVersion, marcando el reto de asegurar que
tras cada actualización mensual el sistema sigue funcionando correctamente.
6. Introducción
Pruebas de regresión, según Wikipedia, son cualquier tipo de
pruebas de software que intentan descubrir errores (bugs),
carencias de funcionalidad, o divergencias funcionales con
respecto al comportamiento esperado del software, causados por
la realización de un cambio en el programa.
7. ¿Qué es RSAT?
Regression Suite Automation Tool
Herramienta que permite a los usuarios funcionales crear un
conjunto de pruebas del ciclo de negocio automatizadas para
aceptación.
• Sin la necesidad de escribir código fuente
• Utilizando el grabador de tareas
8. ¿En qué consiste?
• Se graban cada uno de los procesos a probar
• Las pruebas se almacenan y distribuyen vía LCS (Life Cycle
Services) utilizando las bibliotecas de BPM (Business Process
Modeler)
• Está totalmente integrado con los Servicios de Azure DevOps
para la ejecución, el informe y la investigación de pruebas.
• Los parámetros de prueba se desacoplan de los pasos de prueba
y se almacenan en archivos de Microsoft Excel.
12. ¿Cómo lo hemos hecho?
• Descarga gratuita en Microsoft Download Center
• Última versión 1.200.28056.8 (Mayo)
• RRSS
• https://www.yammer.com/dynamicsaxfeedbackprograms
• https://www.yammer.com/avanade.com
• Herramientas
• RSAT
• LCS, BPM y Azure DevOps
• Entorno D365FO Demo creado en LCS con suscripción
de partner
13. Microsoft y One Version
• El cliente estará siempre en la última versión
• Sólo la última versión tendrá soporte
• Actualizaciones mensuales obligatorias
• 2 grandes releases al año
• Las actualizaciones pueden retrasarse hasta 3 meses
• Las Releases se liberan en fases de anillos
• Microsoft actualiza un entorno UAT y si no se reportan
incidencias bloqueantes, actualiza el entorno de
producción 5 días más tarde
• Es posible porque no se permite más Overlayering
14. OneVersion release rings
Microsoft identifica 5 anillos para asegurar la calidad:
Ring 0 Ring 1 Ring 2 Ring 3 Ring 4
Feature
Teams
Finance and
Operations Team
Preview release First release Standard release
Microsoft (0 – 1)
• Extensive validation
• Compatibility checker
• 100+ customer release validation
program (RVP)
Preview release (2)
• Preview early access program (PEAP)
• Self update only
Standard release (4)
• Monthly predictability
• Customer controlled patching window
• UAT followed by production
• (User Acceptance Tests)
First release (3)
• Production Ready
• Auto update (~150)
• Self update
15. Business Case
Pay Me More [PMM]
• Es una empresa que gestiona
pagos por internet
• La seguridad y confianza son
valores vitales en su negocio
al gestionar miles de
transacciones a la hora.
• Cuenta con una plantilla de
unas 100 personas, joven y
dinámica.
• Tiene implantado D365FO
16. Business Case
Pay Me More [PMM]
• La llegada de OneVersion es motivo
de alegría por estar siempre a
la última
• Exige un gran esfuerzo en verificar
que ninguno de sus procesos
actuales se ve afectado
• Existe una preocupación por tener
que realizar pruebas de aceptación
periódicamente cada vez que
Microsoft saca una realease.
17. Pay Me More [PMM]
Manual tests
Los test requieren mucho tiempo
como para ejecutarse mensualmente
Existe la posibilidad de olvidar algún
escenario de test
Procesos afectados indirectamente
pueden no probarse
El equipo no tiene capacidad para
probar toda la funcionalidad
18. Pay Me More [PMM]
Automated tests
Reducir significativamente el tiempo y el costo para
ejecutar las pruebas de aceptación de escenarios.
Grabarlo una vez, ejecutarlo múltiples
Permitir a los usuarios funcionales ejecutar la
automatización de pruebas sin necesidad de escribir
código fuente utilizando grabación de tareas estándar
No requiere código
Las pruebas se pueden ejecutar como parte de un
proceso de compilación periódico
Integración con Azure DevOps
Plantilla de datos de Excel
Capacidad para definir variantes de las mismas
pruebas con diferentes resultados esperados, incluidas las
verificaciones de errores esperados (validación)
Desacoplar los parámetros de datos
de prueba de los pasos de prueba
19. Pay Me More [PMM]
Conclusión
Manual testing
is no longer an
option
20. 20
Key points automatización
La automatización permite entregar software más rápido sin sacrificar
calidad
Con Continuous delivery, se puede usar la build pipeline para
automatizar los test
Automatizar todo, desde la compilación hasta las pruebas, la
implementación y la infraestructura, es su única forma de avanzar.
3v Big data
Volumen Velocidad Variedad
21. Configuración
previa de LCS
Creación de tests y
grabación en BPM
Configuración de test
plans
Ejecución de tests y
revisión de
resultados
DEMO RSAT - Creación de tests y
ejecución de flujos de proceso
22. Creación de tests y grabación en BPM
Creación de tests
Almacenamiento
en BPM
Distribución de la
librería BPM
Configuración
previa de LCS
Creación de
tests
Configuración
de test plans
Ejecución de
tests y revisión
de resultados
23. Configuración de test plans
Selección de
la librería
BPM
Sincronización
con DevOps
Creación de
test plans y
test suites
Configuración
de parámetros
y datos
Configuración
previa de LCS
Creación de
tests
Configuración
de test plans
Ejécución de
tests y revision
de resultados
24. Ejecución de tests y revisión de
resultados
Actualización de
parámetros y datos
Ejecución
Revisión y análisis
en DevOps
Configuración
previa de LCS
Creación de
tests
Configuración
de test plans
Ejecución de
tests y revisión
de resultados
25. Escenarios de testing
• Aplicación de roles de usuario para validación de
permisos de seguridad
• Enlazado de casos de test – paso de variables entre
casos
• Validación de valores y resultados esperados
• Validación de información presentada por infolog
• Uso de RSAT vía línea de comandos
26. Limitaciones actuales
• El UI de la herramienta es muy pobre (muy simple)
• No se pueden validar:
• Interfaces
• Workflows
• Movilidad, almacén avanzado
• …
• Límite de test cases por test suite (200)
• No puede ejecutarse en entornos OnPremise
• Por defecto, los test se ejecutan usando el role de
admin
27. Insights y limitaciones
No dispone de funciones existentes en
otras herramientas. Por ejemplo:
• No es posible reutilizar test cases como
parte de otros testcases -> workaround:
utilizar casos derivados (investigar)
• No permite añadir pasos condicionales
• No permite crear bucles –> es posible a
través de CLI + Powershell (investigar)
La herramienta lleva activa varios meses
Ahora mismo gana relevancia con la introducción de OneVersion
Cuando más arriba en la pirámide, más caro sale corregir una incidencia y más tiempo conllevará
Explicar cada componente de la pirámide
· RSAT is a cloud infrastructure that allows to upload recorded tests to Microsoft so they can run the Regression test automation on the new versions with your uploaded test cases.
· The ATL (Acceptance test libraries) is the toolset that Microsoft uses for Test automation of the product internally. This allows to implement a set of tests that every develpper must run BEFORE Checkin of new code to avoid breaking the branch. It is a toolbox for developpers that has grown together with the product over the years, not a commercial test suite.
Por qué hemos elegido este tema
- Las herramientas que vamos a presentar ya llevan unos meses activas, con la vernida del concepto de OneVersion, hay un interés general en cómo afectan las actualizaciones continuas en los entornos tanto de desarrollo, testing y producción
OneVersion qué eso?
One versión aporta mucho valor de cara al cliente final pero también requiere de mayor trabajo en pruebas de aceptación y para eso está
RSAT