EJB (Enterprise Java Beans) - Ayuda en pruebas unitarias en spring con JUnit

   
Vista:

Ayuda en pruebas unitarias en spring con JUnit

Publicado por Cristian Alexis (1 intervención) el 20/04/2017 17:28:19
Buen dia!

Estoy realizando una prueba unitaria para un método que lo que hace es eliminar un objeto de la BD pasando por una interface que implementa a CrudRepository llamando a su metodo delete(), este es el codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
@RequestMapping("/eliminarbanco")
public co.jaivana.rest.RecibirDatos Recibir(@RequestParam(value="id"   , defaultValue="0") long datos)
{
    try
    {
		System.out.println("Entro al try");
		System.out.println(datos);
       co.jaivana.model.Banco elBanco=BancoRepository.findOne(datos);
       System.out.println("Encontro el banco:");
 
       if(elBanco!=null)
       {
		  System.out.println("Entro a eliminar");
          BancoRepository.delete(elBanco);
          xMensaje="0";
       }
       else
       {
          xMensaje="Banco no existe";
          System.out.println("banco vacio");
       }
    }
    catch (DataIntegrityViolationException e)
    {
       xMensaje=e.getMostSpecificCause().getMessage();
       if(xMensaje.indexOf("Detail:")!=-1)
       {
          xMensaje=xMensaje.substring(xMensaje.indexOf("Detail:"),xMensaje.length());
          System.out.println("la respuesta es de Data...: "+xMensaje);
       }
 
    }
    catch (Exception e)
    {
       xMensaje=e.getMessage();
       System.out.println("la respuesta es: "+xMensaje);
    }
 
    return new co.jaivana.rest.RecibirDatos(0,String.format(template, xMensaje));
}




Esta es mi test

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
private static co.jaivana.model.Banco banco;
private static co.jaivana.model.BancoEliminar bancoEliminar;
 
 
private BancoRepository bancoRepository;
 
 
private static co.jaivana.rest.RecibirDatos recibirDatos;
 
 
 
@Test
public void test() {
 
	recibirDatos = new RecibirDatos(0, "0");
	banco = new Banco("001", "Bancolombia", 1);
 
	bancoEliminar = new BancoEliminar();
	 bancoRepository =  mock(BancoRepository.class);
	when(bancoRepository.findOne((long) 0)).thenReturn(banco);
 
	bancoEliminar.Recibir(0);
 
}

Aun no manejo completamnete el tema de spring ni tampoco de Junit, trato de crear un objeto mock para que cuando llame al metodo finOne() devuelve el objeto que declaro en el test, pero cuando llega el momento de la verda, el metodo a testear no lo hace.

llevo rato con esta tarea que me pusieron en la empresa, les agradeceria de su ayudad.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Revisar política de publicidad