Test
Last updated
Was this helpful?
Last updated
Was this helpful?
Un Test con jmoordbunit es un EJB que se ejecuta al iniciar el contenedor.
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.
Esta clase contiene todos los mètodos necesarios para ejecutar el test.
Generalmente necesitamos Inyectar:
Repository
Services (Opcional)
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:
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()
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.