Mock
En muchas ocasiones necesitamos realizar operaciones en donde asignamos valores a los entity para ejecutar el test con esos datos.
Por ejemplo ingresamos datos al entity Bodega y ejecutamos la operaciòn save() en la colecciòn.
Al final podemos eliminarlo despues de realizar el test.
O lo dejamos para otras pruebas y al final lo eliminamos cuando terminamos el proceso.

Ejercicio:
Agregar el test del metodo save() a BodegaTest.java
Crear un Mock
Bodega bodega = new Bodega();
bodega.setIdbodega("bodega-test");
bodega.setDireccion("Panama");
bodega.setTelefono("(507)");
//User info es una clase que usa el framework para guardar referencias
//de usuarios
List<UserInfo> list = new ArrayList<>();
bodega.setUserInfo(list);
bodega.setActivo("si");
Implementamos
assertEquals() para verificar si logro guardarlo.
unitTest.assertEquals("save()", true,bodegaRepository.save(bodega));
Mètodo
@Test
private void save() {
try {
//Mock
Bodega bodega = new Bodega();
bodega.setIdbodega("bodega-test");
bodega.setDireccion("Panama");
bodega.setTelefono("(507)");
//User info es una clase que usa el framework para guardar referencias
//de usuarios
List<UserInfo> list = new ArrayList<>();
bodega.setUserInfo(list);
bodega.setActivo("si");
unitTest.assertEquals(nameOfMethod(), true,bodegaRepository.save(bodega));
} catch (Exception e) {
System.out.println(nameOfMethod()+" " + e.getLocalizedMessage());
}
}
BodegaTest.java
import com.avbravo.ejbjmoordb.pojos.UserInfo;
import com.avbravo.jmoordbunit.anotation.Report;
import com.avbravo.jmoordbunit.anotation.Test;
import com.avbravo.jmoordbunit.test.UnitTest;
import com.avbravo.microtestingejb.entity.Bodega;
import com.avbravo.microtestingejb.repository.BodegaRepository;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.DependsOn;
import javax.ejb.Singleton;
import javax.ejb.Startup;
import javax.inject.Inject;
/**
*
* @author avbravo
*/
@Startup
@Singleton
@DependsOn("TestEnvironment")
@Test
@Report(path = "/home/avbravo/Descargas/")
public class BodegaTest {
@Inject
UnitTest unitTest;
@Inject
BodegaRepository bodegaRepository;
@PostConstruct
void init() {
unitTest.start(BodegaTest.class);
save();
findAll();
}
@Test
private void save() {
try {
//Mock
Bodega bodega = new Bodega();
bodega.setIdbodega("bodega-test");
bodega.setDireccion("Panama");
bodega.setTelefono("(507)");
//User info es una clase que usa el framework para guardar referencias
//de usuarios
List<UserInfo> list = new ArrayList<>();
bodega.setUserInfo(list);
bodega.setActivo("si");
unitTest.assertEquals(nameOfMethod(), true,bodegaRepository.save(bodega));
} catch (Exception e) {
System.out.println(nameOfMethod()+" " + e.getLocalizedMessage());
}
}
@Test
private void findAll() {
unitTest.assertNotEquals(nameOfMethod(), 0, bodegaRepository.findAll().size());
}
@PreDestroy
public void destroy() {
unitTest.end(BodegaTest.class);
}
}
Al ejecutar el Test
Resumen

Clases List: Pasaron todos los test.

Metodos fueron exitosos

Si ejecutamos nuevamente el test
El resumen indica que hay 1 error

Clases List
Se observa que BodegaTest tiene dos errores

Al verificar la clase BodegaTest
Se observa que el metodo que fallo fue el metodo save()

Para tener màs detalles sobre los mensajes de error podemos implementar UnitView.java
Last updated
Was this helpful?