Caso de éxito
Concepto
(write the text)

Automatización en la Gestión Aduanera usando GXtest y GeneXus

Concepto es una empresa uruguaya especializada en desarrollar soluciones integrales para el comercio exterior. Su enfoque principal es el software aduanero. Entre sus desarrollos más importantes se encuentra la plataforma GIA (Gestión Integral Aduanera), diseñada para centralizar y optimizar el control de las operaciones de comercio exterior, incluyendo la administración de importaciones, exportaciones, tránsitos, el cobro de tasas y la gestión de riesgos asociados.

GIA garantiza dinamismo, seguridad y transparencia en la interacción con los organismos aduaneros de Latinoamérica.

El problema


En un Sistema de Misión Crítica como GIA, los cambios constantes en atributos y tablas frecuentemente afectaban áreas no relacionadas, generando errores que podían llegar a producción. La falta de pruebas de regresión exhaustivas, debido al tiempo limitado para testeo manual, implicaba riesgos significativos en términos de robustez del sistema y cumplimiento del Acuerdo de Nivel de Servicio, exponiendo a Concepto a posibles sanciones y multas.

“GIA debe funcionar las 24 horas del día, los 365 días del año. Un posible fallo en este sistema puede frenar toda la actividad relativa al comercio exterior de un país. Por eso es de vital importancia que este sistema sea robusto”, agrega Enrique Almeida, Ingeniero de Software y Director de Concepto.
 
Por tales motivos era imperativo:
 
  • Ejecutar pruebas de regresión diarias en módulos críticos.
  • Incrementar la cobertura de pruebas y detectar errores tempranamente.
  • Disminuir la incidencia de errores en producción.
  • Adoptar una solución escalable que automatizara procesos repetitivos.
 

La Solución: GXtest como núcleo de la automatización


En 2012, Concepto implementó GXtest 3 para pruebas de regresión end-to-end en flujos críticos. Los test se ejecutaban automáticamente en un ambiente controlado, permitiendo a los desarrolladores analizar los resultados al día siguiente. En 2020, con la migración a GeneXus 16, se implementó GXtest 4, que introdujo:
 
  • GXtest Recorder para grabar flujos automáticamente.
  • Pruebas unitarias sobre la lógica del sistema, integrándose en el pipeline de integración continua con Jenkins.

Hoy, las pruebas unitarias se ejecutan automáticamente tras cada build, mientras que las pruebas de interfaz corren tras cada despliegue en un ambiente espejo de producción. Los resultados se reportan mediante un sistema basado en Allure, notificando diariamente a los desarrolladores.

"Nuestros desarrolladores realizan commits diarios en GXserver, y Jenkins verifica automáticamente cada hora si hubo cambios. Si detecta alguno, inicia el proceso de build de la Knowledge Base, que toma aproximadamente una hora. Además, todas las noches desplegamos el sistema en un ambiente de pruebas, utilizando una base de datos que es una copia del ambiente de producción del día anterior. Luego, ejecutamos los 140 flujos automatizados, lo cual lleva unas dos horas. Posteriormente, enviamos a los desarrolladores un correo con el reporte de resultados generado con Allure, informando tanto a ellos como a los jefes de desarrollo sobre el estado del sistema. Con esta metodología, cualquier error detectado se reporta de inmediato y se corrige antes de llegar a producción. Además, si encontramos errores fuera de las pruebas automatizadas, los incorporamos al siguiente sprint para asegurar que queden cubiertos en el futuro. Así, hemos logrado una automatización progresiva que evita la recurrencia de problemas y garantiza la calidad del sistema", agrega Almeida.
 

Los resultados


El uso de GXtest transformó la forma en que Concepto asegura la calidad de GIA. Al automatizar pruebas críticas y establecer un pipeline de integración continua, Concepto logró reducir el impacto de errores y optimizar los tiempos de desarrollo y pruebas.

La automatización de pruebas y configuración de integración continua también impactó en la metodología de trabajo. Concepto alcanzó una metodología de desarrollo ágil y fomentó la cultura DevOps en el equipo.

“Tener la misma herramienta para desarrollar y modificar los tests agiliza mucho el trabajo, ya que puedes trabajar con el mismo equipo, sin necesidad de contratar a una empresa externa para hacer los tests.

Aunque la frecuencia de entrega al cliente no depende únicamente del ciclo de desarrollo del sistema, ya que el delivery es gestionado por otra empresa encargada de administrar y monitorear el ambiente de producción, Concepto está plenamente preparado para cumplir con los tiempos solicitados por la aduana, ya sea semanal, quincenal o mensualmente. Además, el equipo tiene la capacidad de realizar liberaciones intermedias durante un sprint cuando la aduana solicita actualizaciones urgentes.

Entre los beneficios más importantes se encuentran:

Reducción de errores en producción

La automatización ha disminuido significativamente los errores que llegan a producción, alineándose con los estándares de calidad del SLA (Acuerdo de Nivel de Servicio, por su traducción del inglés).

Tranquilidad operativa

Con pruebas de regresión automatizadas, el equipo puede implementar nuevas versiones con confianza.

Agilidad en migraciones

Las pruebas automatizadas se han convertido en un pilar durante actualizaciones de GeneXus y Oracle, asegurando una transición fluida.

Automatización inteligente

GXtest permitió extender la cobertura de pruebas sin aumentar significativamente los recursos.

Adaptabilidad

La integración con herramientas existentes y la capacidad de registrar nuevos flujos aseguraron una evolución constante del sistema.

Cultura DevOps

La automatización fomentó la colaboración entre desarrolladores, minimizando errores y optimizando procesos.
 

Acerca de Concepto SRL

Concepto es una empresa especializada en desarrollar soluciones de software con GeneXus. CONCEPTO es Solution Partner GOLD de GeneXus y aliado de negocios de GeneXus Consulting. Entre sus clientes destacan Aduanas (Uruguay), Aduanas (Costa Rica), DIAN (Dirección de Impuestos y Aduanas Nacionales) de Colombia, Banco Interamericano de Desarrollo (BID), entre otros.

 

Acerca de GXtest

GXtest es un producto desarrollado conjuntamente por Abstracta y GeneXus para diseñar, automatizar y ejecutar pruebas funcionales en aplicaciones web y móviles desarrolladas con GeneXus. Hasta la fecha, se ejecutan automáticamente más de 1.5 millones de casos de prueba por mes usando GXtest; además, se han diseñado más de 45,000 casos de prueba.