MuleSoft - Prueba con MUnit
Entendemos que las pruebas unitarias son un método mediante el cual se pueden probar unidades individuales de código fuente para determinar si son aptas para su uso o no. Los programadores de Java pueden usar el marco Junit para escribir casos de prueba. De manera similar, MuleSoft también tiene un marco llamado MUnit que nos permite escribir casos de prueba automatizados para nuestras API e integraciones. Es un ajuste perfecto para el entorno de implementación / integración continua. Una de las mayores ventajas del marco MUnit es que podemos integrarlo con Maven y Surefire.
Características de MUnit
A continuación se muestran algunas de las características muy útiles del marco de prueba Mule MUnit:
En el marco MUnit, podemos crear nuestra prueba Mule utilizando código Mule y código Java.
Podemos diseñar y probar nuestras aplicaciones y API Mule, ya sea gráficamente o en XML, dentro de Anypoint Studio.
MUnit nos permite integrar fácilmente las pruebas en el proceso de CI / CD existente.
Proporciona pruebas e informes de cobertura generados automáticamente; de ahí que el trabajo manual sea mínimo.
También podemos utilizar servidores locales de DB / FTP / correo para hacer que las pruebas sean más portátiles a través del proceso de CI.
Nos permite habilitar o deshabilitar pruebas.
También podemos ampliar el marco MUnit con complementos.
Nos permite verificar las llamadas al procesador de mensajes.
Con la ayuda del marco de prueba MUnit, podemos deshabilitar los conectores de punto final, así como los puntos finales de entrada de flujo.
Podemos comprobar los informes de error con el seguimiento de pila de Mule.
Última versión del marco de prueba Mule MUnit
MUnit 2.1.4 es la última versión del marco de prueba de Mule MUnit. Requiere los siguientes requisitos de hardware y software:
- MS Windows 8+
- Apple Mac OS X 10.10+
- Linux
- Java 8
- Maven 3.3.3, 3.3.9, 3.5.4, 3.6.0
Es compatible con Mule 4.1.4 y Anypoint Studio 7.3.0.
MUnit y Anypoint Studio
Como se discutió, MUnit está completamente integrado en Anypoint Studio y podemos diseñar y probar nuestras aplicaciones y API Mule gráficamente o en XML dentro de Anypoint Studio. En otras palabras, podemos usar la interfaz gráfica de Anypoint Studio para hacer lo siguiente:
- Para crear y diseñar pruebas MUnit
- Para ejecutar nuestras pruebas
- Para ver los resultados de las pruebas y el informe de cobertura
- Para depurar las pruebas
Entonces, comencemos a discutir cada tarea una por una.
Creación y diseño de pruebas MUnit
Una vez que comience un nuevo proyecto, automáticamente agregará una nueva carpeta a saber src/test/munita nuestro proyecto. Por ejemplo, comenzamos un nuevo proyecto de Mule a sabertest_munit, puede ver en la imagen de abajo, agrega la carpeta mencionada anteriormente en nuestro proyecto.
Ahora, una vez que comenzó un nuevo proyecto, hay dos formas básicas de crear una nueva prueba MUnit en Anypoint Studio:
By Right-Clicking the Flow - En este método, debemos hacer clic con el botón derecho en el flujo específico y seleccionar MUnit en el menú desplegable.
By Using the Wizard- En este método, necesitamos usar el asistente para crear una prueba. Nos permite crear una prueba para cualquier flujo en el espacio de trabajo.
Vamos a utilizar la forma 'Hacer clic con el botón derecho en el flujo' para crear una prueba para un flujo específico.
Primero, necesitamos crear un flujo en el espacio de trabajo de la siguiente manera:
Ahora, haga clic derecho en este flujo y seleccione MUnit para crear una prueba para este flujo, como se muestra a continuación:
Creará un nuevo conjunto de pruebas con el nombre del archivo XML donde reside el flujo. En este caso,test_munit-test-suite es el nombre del nuevo conjunto de pruebas como se muestra a continuación:
A continuación se muestra el editor XML para el flujo de mensajes anterior:
Ahora, podemos agregar un MUnit procesador de mensajes a la suite de prueba arrastrándolo desde Mule Palette.
Si desea crear una prueba a través del asistente, siga File → New → MUnit y lo llevará al siguiente conjunto de pruebas MUnit:
Configurar la prueba
En Mule 4, tenemos dos secciones nuevas a saber MUnit y MUnit Tools, teniendo colectivamente todo el procesador de mensajes MUnit. Puede arrastrar cualquiera de los procesadores de mensajes en su área de prueba MUnit. Se muestra en la siguiente captura de pantalla:
Ahora, si desea editar la configuración de su traje o prueba en Anypoint Studio, debe seguir los pasos a continuación:
Step 1
Ve a la Package Explorer y haga clic derecho en el .xml filepara su suite o prueba. Luego, seleccione elProperties.
Step 2
Ahora, en la ventana Propiedades, debemos hacer clic Run/Debug Settings. Después de este clicNew.
Step 3
En el último paso, haga clic en MUnit debajo Select Configuration Type ventana y luego haga clic en OK.
Ejecutando la prueba
Podemos ejecutar tanto una suite de pruebas como una prueba. Primero, veremos cómo ejecutar un conjunto de pruebas.
Ejecución de un conjunto de pruebas
Para ejecutar un conjunto de pruebas, haga clic con el botón derecho en la parte vacía del Mule Canvas donde reside su conjunto de pruebas. Se abrirá un menú desplegable. Ahora, haga clic en elRun MUnit suite como se muestra a continuación -
Posteriormente, podemos ver la salida en la consola.
Ejecutando una prueba
Para ejecutar una prueba específica, debemos seleccionar la prueba específica y hacer clic derecho en ella. Obtendremos el mismo menú desplegable que obtuvimos mientras ejecutamos el conjunto de pruebas. Ahora, haga clic en elRun MUnit Test opción como se muestra a continuación -
Allí después se puede ver la salida en la consola.
Ver y analizar el resultado de la prueba
Anypoint Studio muestra el resultado de la prueba MUnit en el MUnit tabdel panel del explorador de la izquierda. Puede encontrar pruebas exitosas en color verde y pruebas fallidas en rojo, como se muestra a continuación:
Podemos analizar el resultado de nuestra prueba viendo el informe de cobertura. La característica principal del Informe de cobertura es proporcionar una métrica sobre la cantidad de una aplicación Mule que se ha ejecutado con éxito mediante un conjunto de pruebas MUnit. La cobertura de MUnit se basa básicamente en la cantidad de procesadores de mensajes MUnit ejecutados. El informe de cobertura de MUnit proporciona métricas para lo siguiente:
- Cobertura general de la aplicación
- Cobertura de recursos
- Cobertura de flujo
Para obtener el informe de cobertura, debemos hacer clic en 'Generar informe' en la pestaña MUnit como se muestra a continuación:
Depurando la prueba
Podemos depurar tanto una suite de pruebas como una prueba. Primero, veremos cómo depurar un conjunto de pruebas.
Depurar una suite de pruebas
Para depurar un conjunto de pruebas, haga clic con el botón derecho en la parte vacía del Mule Canvas donde reside su conjunto de pruebas. Se abrirá un menú desplegable. Ahora, haga clic en elDebug MUnit Suite como se muestra en la imagen de abajo -
Luego, podemos ver la salida en la consola.
Depurar una prueba
Para depurar una prueba específica, debemos seleccionar la prueba específica y hacer clic derecho en ella. Obtendremos el mismo menú desplegable que obtuvimos al depurar el conjunto de pruebas. Ahora, haga clic en elDebug MUnit Testopción. Se muestra en la siguiente captura de pantalla.