Pruebas integrales del marketplace B2B insignia
DESCRIPCIÓN DEL PRODUCTO
El cliente es una gran empresa de mantenimiento de automóviles que presta servicios de pintura, reparación de carrocerías, cambios de aceite, mantenimiento, lavado de autos y muchos otros.
Su producto informático clave es un mercado B2B en la plataforma SAP Hybris que conecta miles de tiendas y ofrece productos de fabricantes líderes.
El cliente había trabajado anteriormente con otro proveedor de aseguramiento de la calidad, pero no estaba satisfecho con la escasa eficacia de las pruebas, lo que provocaba importantes retrasos en los lanzamientos. Tras buscar un socio de pruebas más adecuado, el cliente recurrió a a1qa.
DESCRIPCIÓN DEL PROYECTO
El equipo de a1qa, dirigido por un responsable de control de calidad, se unió a un proyecto organizado mediante el método Scrum. La primera tarea consistía en ayudar al cliente a lanzar lo antes posible un mercado emblemático.
El equipo analizó los actuales procesos de control de calidad, sugirió mejoras y aplicó nuevos enfoques basados en ISTQB, a saber:
Creación de un sistema de pruebas para cada entorno
- Un entorno de pruebas en el que los desarrolladores publicarían código nuevo y el equipo de a1qa realizaría pruebas y demostraciones de las nuevas funcionalidades.
- Entorno de pruebas de aceptación de usuarios (UAT) en el que se entregaba la versión final para demostraciones a nuevos proveedores o para verificar el correcto funcionamiento de las nuevas funciones.
- Un entorno de producción para usuarios reales.
Para mejorar la eficacia de las pruebas, a1qa recomienda optimizar el uso de estos entornos del siguiente modo:
- El entorno de pruebas debe utilizarse para probar nuevas funciones con una cobertura completa de las pruebas de aceptación.
- El entorno UAT es para pruebas de regresión, con congelación de código el noveno día del sprint para garantizar una cobertura mínima de las pruebas de aceptación.
- Entorno de producción — para pruebas de humo el día 15 del sprint si las pruebas de regresión son satisfactorias.
Con este planteamiento se pretendía simplificar el proceso de aseguramiento de la calidad y mejorar la eficacia general de las pruebas.
Programación independiente de las actividades de prueba para cada versión
El responsable de control de calidad implantó un sistema de seguimiento exhaustivo en el que se describían todas las funciones que debían entregarse en cada entorno. Esto facilitó la comunicación y la transparencia para todos los profesionales del control de calidad.
Cumplimiento de las tareas del cliente
Al principio, el cliente aprobaba las versiones de todas las nuevas funciones. Una vez que a1qa se consolidó como socio fiable, traspasó esta tarea al equipo de control de calidad. Las funciones críticas las probaba el propio cliente o se las presentaba el equipo de ingeniería durante las demostraciones.
Establecer el proceso de clasificación de defectos
Al principio, las reuniones del equipo de control de calidad con el cliente se celebraban dos veces por semana, y luego una vez a la semana. En estas reuniones, los participantes en el proyecto analizaban y volvían a priorizar los defectos. Estas sesiones ayudaron a identificar posibles riesgos, garantizar la eliminación de todos los defectos críticos e importantes y acordar entre los miembros del equipo las prioridades de los fallos identificados.
Organización del proceso de creación de la documentación de las pruebas
El proceso de documentación garantizó la cobertura total de las pruebas de la aplicación, ayudó a desarrollar casos y guiones de prueba bien estructurados para minimizar los problemas durante la fase operativa, facilitó la interacción entre los participantes en el proyecto, facilitó el intercambio de conocimientos y contribuyó a que los nuevos miembros del equipo se pusieran al día y se familiarizaran con el producto de software más rápidamente.
Introducción de una descripción universal de los defectos
Esta solución permitió a todos los implicados en el proyecto comprender claramente la naturaleza de cada defecto, lo que facilitó una priorización más precisa y redujo el riesgo de repetición del trabajo o de interrupción del calendario debido a la incoherencia.
Creación de una base de conocimientos detallada
La base de conocimientos facilitó una introducción más eficaz del nuevo personal en el proyecto, creó un enfoque normalizado de la garantía de calidad y simplificó la resolución de problemas de flujo de trabajo. Además, garantizó que todos los conocimientos acumulados permanecieran en el proyecto aunque personas clave abandonaran el equipo.
En la segunda fase, el equipo de a1qa llevó a cabo pruebas completas de aceptación del usuario. Los ingenieros de control de calidad probaron a fondo toda la solución de software utilizando escenarios que simulaban experiencias reales de los usuarios para evaluar el rendimiento del anterior proveedor de control de calidad y garantizar que todas las funciones cumplían los requisitos. Tras cinco meses de pruebas del proyecto y validación de defectos, el cliente aprobó el software para su despliegue y el mercado empezó a funcionar.
Tras el éxito del lanzamiento, a1qa continuó con los siguientes trabajos:
Pruebas funcionales
Los ingenieros de control de calidad realizaron un ciclo completo de pruebas de las nuevas funciones para garantizar su alta calidad. También se realizaron pruebas de regresión para asegurarse de que los cambios en el código no afectaban a la funcionalidad del software que antes funcionaba correctamente. También se realizaron pruebas de humo para comprobar rápidamente la funcionalidad básica y la validación de defectos para confirmar que todos los errores detectados habían sido eliminados con éxito por los desarrolladores.
Además, a1qa realizó pruebas de compatibilidad. Con BrowserStack, los ingenieros probaron el producto de software en diferentes plataformas y navegadores. Analizaron los dispositivos más populares y crearon una matriz de compatibilidad que incluía Safari, Google Chrome, Microsoft Edge y los últimos dispositivos de iPhone, iPad y Samsung.
Como parte de la primera fase de validación de big data, los testers comprobaron la lógica empresarial. Se aseguraron de que todas las mercancías estuvieran correctamente categorizadas y cumplieran las normas predefinidas.
Los ingenieros de a1qa realizaron una demostración de la nueva funcionalidad para el cliente con el fin de explicarle el funcionamiento del sistema de devoluciones, que permite a los usuarios finales emitir devoluciones y recibir automáticamente el dinero de vuelta.
Automatización de pruebas
Realizar las pruebas de regresión manualmente llevaba mucho tiempo: cuatro ingenieros de control de calidad tenían que dedicar cuatro días a cada ciclo. Para simplificar este proceso, a1qa implementó la automatización de pruebas en Java que cubría las pruebas de regresión, las pruebas de compilación y las pruebas de humo.
El equipo de a1qa utilizó un marco propio de automatización de pruebas basado en IA. Se diseñó para simplificar, asegurar y hacer más estable la interacción con los navegadores web. El marco cuenta con funcionalidad de expectativas condicionales, así como con la capacidad de ejecutar pruebas en paralelo y un sencillo sistema de configuración.
Para mejorar el proceso de ejecución y generación de reportes de pruebas, a1qa implementó Jenkins CI para ejecutar pruebas remotas y lo integró con Jira y Allure Report. Esta personalización permitió generar automáticamente conjuntos de pruebas específicos después de probar cada compilación, así como proporcionar reportes detallados. Esto ha mejorado enormemente la eficacia y la precisión de las pruebas.
La automatización de las pruebas ha reducido a la mitad el tiempo de las pruebas de regresión.
Los ingenieros de automatización de pruebas también comprobaron la optimización de la barra de búsqueda, que ahora cuenta con funciones para buscar productos por ID, nombre y categoría. Inicialmente, el cliente no tenía una visión clara de cómo debía funcionar esta función. Por ello, a1qa automatizó la búsqueda de varios productos y proporcionó informes para ayudar a los desarrolladores del cliente a analizar los resultados y mejorar la búsqueda.
En la segunda fase de validación de big data, el equipo desarrolló scripts en Python para identificar y corregir fallos en los datos que impedían categorizar los productos.
Pruebas de rendimiento
El cliente quería saber cómo de estable funcionaría el mercado bajo los criterios de aceptación especificados : 250 usuarios activos al mismo tiempo. Los ingenieros de a1qa desarrollaron casos de prueba y realizaron pruebas de estrés y carga en el lado del servidor, así como pruebas de todo el producto en el lado del cliente. Estas pruebas identificaron consultas pesadas en la base de datos que ralentizaban el software. Después de que los desarrolladores solucionaran el problema, los ingenieros de calidad volvieron a probar el sistema para asegurarse de que las correcciones eran efectivas.
Durante el soporte posterior al lanzamiento, el equipo de a1qa realizó pruebas en los casos en que las historias de usuario podían afectar al rendimiento general en Sprint. Los ingenieros de control de calidad pasaron los defectos identificados a los desarrolladores para su resolución y, a continuación, volvieron a probar el producto de software.
SERVICIOS PRESTADOS
- Pruebas de aceptación
- Pruebas funcionales
- Automatización de pruebas
- Pruebas de rendimiento
TECNOLOGÍAS Y HERRAMIENTAS
- Postman
- BrowserStack
- Intellij IDEA
- AWS
- Jenkins
- Allure Reports
- Figma
- Git
- Jira
- Azure Storage Explorer
- Excel
- SQL
- Groovy/ ImpEx scripts
- REST Assured
- Cucumber JVM
- Allure Framework
- TestNG
- Docker
APOYO A LA MIGRACIÓN A ORACLE ERP
El cliente utilizaba un software que interactuaba con el mercado mediante archivos .txt que contenían información sobre productos, proveedores, precios y descuentos. El marketplace enviaba archivos .txt con datos de los clientes, números de cuenta e importes. Sin embargo, el cliente decidió cambiar a Oracle ERP. a1qa realizó pruebas de integración del sistema para garantizar una interacción perfecta y un flujo de datos fluido entre el Marketplace y Oracle ERP.
SOPORTE DE ACTUALIZACIÓN DE SAP HYBRIS
El producto de software probado funcionaba en la plataforma SAP Hybris. Aproximadamente una vez al año, SAP lanza una actualización importante al tiempo que interrumpe el soporte para las versiones anteriores. La última vez que esto ocurrió, los ingenieros de control de calidad volvieron a ejecutar todos los casos de prueba disponibles para asegurarse de que el software era estable tras la actualización a la última versión de SAP Hybris. Además, cada tres meses, los ingenieros de control de calidad realizaban el mantenimiento de las principales actualizaciones de SAP Hybris, es decir, analizaban qué partes del software podían haberse visto afectadas y las probaban.
Los expertos de a1qa también ofrecieron una asistencia ágil para resolver los problemas a medida que surgían, ya se tratara de encontrar defectos o de ampliar rápidamente el equipo para gestionar más tareas de pruebas.
RESULTADOS
-
El lanzamiento de un mercado insignia que da servicio a miles de tiendas, apenas cinco meses después de que comenzara la colaboración con a1qa.
-
Mejora de la calidad del mercado mediante pruebas en todas las fases del ciclo de vida del desarrollo de software (SDLC).
-
Acelerar el tiempo de ejecución de las pruebas de regresión en un 50% y optimizar las pruebas de funciones críticas (pruebas de humo) y la verificación de la compilación mediante la implantación de la automatización de pruebas en Java.
-
Garantizar la intercambiabilidad de los miembros del equipo estableciendo una sólida biblioteca de datos y un sistema de transferencia de conocimientos.
EN CIFRAS
-
2años de duración del proyecto
-
13ingenieros de control de calidad
-
50%de reducción al tiempo de las pruebas de regresión
-
100%cumplimiento de plazos