Test
Un Test con jmoordbunit es un EJB que se ejecuta al iniciar el contenedor.
Anotaciones
Debe contener las siguientes anotaciones:
@Startup
@Singleton
@DependsOn(Name_ofEJB_dependiente)
Report(path="path_reportes") //Opcional
@Test (en los métodos que se realizara el testing)
Detalle:
@Startup:
Indica que se ejecutara al iniciar la aplicaciòn en el contenedor
@Singleton
Indicamos que sera unico
@DependsOn()
El primero que deseamos ejecutar debe implementar la clase @DependsOn("TestEnvironment")
Si deseamos que se ejecute después de otro , idicamos el nombre del EJB padre @DependsOn("Padre")
@Report(path="")
Indicamos la ruta en que se generaran los reportes de los test.
UnitTest
Esta clase contiene todos los mètodos necesarios para ejecutar el test.
Generalmente necesitamos Inyectar:
Repository
Services (Opcional)
Métodos
Usamos metodos:
init(): Que se ejecuta al iniciar el ejb, alli colocamos los mètodos a realizar el test e inicializamos el UnitTest
destroy(): Se ejecuta cuando de destruye el EJB.
Ejemplo:
Test simple
Objetivo del Test:
Ejecutar un test para un metodo no creado donde queremos verificar si no hay datos en una colecciòn llamada bodega.
Metodo:
findAll()
Usamos el mètodo unitTest.assertNotEquals("metodo",resultado_esperado, expresion_evaluar);
El verificara que el resultado no sea igual a cero y contara internamente el contador del evento.
Agregarlo al init()
BodegaTest.java
Cuando se ejecuta el proyecto de Test:
Podemos ver varios informes:
Resumen de los test.
Clases List: Nos muestra las clases y el total de resultados de cada operación
Podemos observar que se ejecuto en solo test sobre un método y el resultado fue exitoso, es decir la colección tiene documentos no esta vacía.
Resumen:
Clases List:
Podemos ver el detalle de los metodos ejecutados:
En este caso el test fallo, debido a que no tenemos documentos en la colecciòn.
Last updated