Posted: 20 Oct. 2022 5 Tiempo de lectura

Fase de implementación de las APIs: Enfoque de Mulesoft

Como se ha comentado en el artículo Ciclo de vida de las APIs: enfoque de Mulesoft, en la actualidad las empresas necesitan tomar decisiones de manera ágil y buscan una metodología capaz de proporcionar la flexibilidad que requieren para poder lograrla.

Para alcanzar los objetivos, reducir tiempos y ganar eficiencia, Mulesoft ofrece una suite completa de herramientas que nos ayudarán y guiarán durante el ciclo completo de vida de una API.

En este artículo se explica cómo, dentro de este ciclo de vida, se pueden cubrir las tareas relativas a la fase de implementación mediante las herramientas que nos proporciona Mulesoft.

Implementación: Anypoint Studio

Para poder realizar la implementación de nuestra API, Mulesoft pone a nuestra disposición su IDE Anypoint Studio, el cual se puede descargar desde su página. Esta herramienta permite:

  • Construir aplicaciones de manera gráfica o usando XML
  • Realizar un despliegue fácil en servidores on-premise o en la nube de Anypoint Platform
  • Ejecutar en modo debug y detectar errores en las integraciones en tiempo de diseño
  • Descargar y desarrollar nuevos conectores

Si se trata de una API REST, en esta fase de implementación ya dispondremos de la especificación y recursos de la API, los cuales se habrán generado en la Fase de Diseño y los cuales podremos encontrar tanto en Design Center como en Anypoint Exchange. Para poder importar la especificación / recursos a una nueva API se deben seguir los siguientes pasos:

1. Crear una API en Anypoint Studio: File > New > Mule Project

2. Indicar el nombre de nuestra API en el apartado Project Name e indicar desde dónde queremos importar la especificación. En este caso seleccionaremos la pestaña Download RAML from Design Center

Nota: En el caso de que la API ya se encontrase creada, bien si queremos añadirle una especificación desde Design Center o bien si hemos realizado cambios en la especificación que ya está usando y queremos actualizarla en Anypoint studio, deberemos hacer click derecho sobre la API y seleccionar Anypoint Platform > Download RAML from Design Center

3. Llegados a este punto de la implementación, ya contamos con una API que incluye todos los recursos necesarios y estaríamos listos para comenzar con el desarrollo. Anypoint Studio permite generar de forma rápida y automática un flujo por cada recurso – método a partir del RAML que hayamos diseñado mediante la función Mule > Generate Flows from Local REST API

4. Una vez tenemos los flujos generados, podemos hacer uso de los distintos componentes que Mulesoft disponibiliza a través de la Paleta de Mule. En este apartado encontraremos disponibles tanto componentes CORE de Anypoint Studio como aquellos que nos descarguemos desde Anypoint Exchange. Estos componentes nos permitirán llevar a cabo la lógica necesaria de nuestro proceso, transformaciones de datos y conexiones con los diferentes sistemas mediante DataWeave, lenguaje propio de Mulesoft.

Pruebas: MUnit

Implementada nuestra API, es el momento de realizar pruebas. MUnit es un framework para testing integrado en Anypoint Studio que permite crear pruebas automatizadas para APIs creadas en Mulesoft. Esta herramienta permite:

  • Crear y construir pruebas tanto en XML como en Java
  • Hacer mocks para la salida de los procesos
  • Crear tests mediante la interfaz drag-and-drop de Anypoint Studio
  • Insertar funcionalidades espía para hacer un seguimiento de lo que sucede antes y después de que el proceso sea invocado
  • Visualizar informes de cobertura
  • Desplegar tests que incluyan nuestros propios plugins
  • Acceder a stacktraces detallados que identifican errores del procesador de mensajes
  • Integrarse con Maven y Surefire para un soporte de integración continua

¿Qué debemos hacer para poder utilizarlo?

1. Lo primero que debemos hacer es comprobar que tenemos instalado MUnit en nuestro Anypoint Studio desde Help > About Anypoint Studio. En la ventana emergente que aparecerá, pulsaremos sobre Installation Details. Al hacer esto se nos mostrará un listado con los diferentes softwares que tenemos instalados en nuestro Anypoint Studio.

2. En caso de no disponer de la herramienta lo instalaremos desde Help > Install New Software… seleccionamos MUnit Update Site del desplegable que nos aparecerá y marcaremos MUnit

Con MUnit instalado lo primero que haremos será crear un test desde 0. Para ello tendremos que hacer click derecho sobre el flujo que queramos probar y seleccionar MUnit > Create blank test for this Flow. Esto creará un archivo en la carpeta src/test/munit en el que podremos configurar las pruebas que deseemos:

MUnit también nos da la opción de crear pruebas de manera automática a partir de una ejecución. Para ello deberemos:

1. Hacer click derecho sobre el flujo que queremos probar y seleccionar MUnit > Record test for this flow

2. Tras seleccionar esta opción, se nos pedirá que seleccionemos el nombre del flujo, le pongamos un nombre a nuestros test y se nos mostrará un resumen de los componentes que aparecerán en nuestro test

3. Con todo configurado, la API se desplegará automáticamente y podremos lanzar la petición que queremos probar

4. La propia herramienta será la encargada de generar el flujo y los componentes necesarios para poder volver realizar la prueba que se ha lanzado desde MUnit

5. Si necesitamos realizar alguna modificación podemos manipular el flujo generado directamente

Completada la fase de implementación, el siguiente paso será desplegar nuestra aplicación en Runtime Manager para comenzar con la fase de gestión de la API.

 

Conoce al autor del artículo

David de la Calle, analista de Consultoría Tecnológica de Deloitte