Diferencia entre revisiones de «Springockito»

De Dos Ideas.
Saltar a: navegación, buscar
(Página creada con 'Extensión de Spring para simplificar la creación de mocks en los test. Ofrece la posibilidad de realizar la creación de los mocks mediante los xml de Spring o mediante anotac…')
 
(Ejemplo con anotaciones)
Línea 1: Línea 1:
 +
Extensión de Spring para simplificar la creación de mocks en los test. Ofrece la posibilidad de realizar la creación de los mocks mediante los xml de Spring o mediante anotaciones en el mismo test.
 +
 
Extensión de Spring para simplificar la creación de mocks en los test. Ofrece la posibilidad de realizar la creación de los mocks mediante los xml de Spring o mediante anotaciones en el mismo test.
 
Extensión de Spring para simplificar la creación de mocks en los test. Ofrece la posibilidad de realizar la creación de los mocks mediante los xml de Spring o mediante anotaciones en el mismo test.
  
Línea 17: Línea 19:
 
</code>
 
</code>
  
En el atributo “loader” de la anotación “ContextConfiguration” hay que setear la clase “SpringockitoContextLoader” de Springockito, esta clase es la encargada de realizar las sustituciones de las clases reales por los mocks.
+
En el ejemplo se prueba el método "talk" de la clase "VoiceService", el cual debe ejecutar una o dos veces el método "play" de la clase "Audio". Esta ultima es la clase que mockeamos para verificar las ejecuciones de su métodos.
  
 
<code java>
 
<code java>
Línea 49: Línea 51:
 
     }
 
     }
 
}
 
}
 +
</code>
  
</code>
+
En el atributo “loader” de la anotación “ContextConfiguration” hay que setear la clase “SpringockitoContextLoader” de Springockito, esta clase es la encargada de realizar las sustituciones de las clases reales por los mocks.
  
 
==Ver También==
 
==Ver También==

Revisión del 18:31 5 mar 2013

Extensión de Spring para simplificar la creación de mocks en los test. Ofrece la posibilidad de realizar la creación de los mocks mediante los xml de Spring o mediante anotaciones en el mismo test.

Extensión de Spring para simplificar la creación de mocks en los test. Ofrece la posibilidad de realizar la creación de los mocks mediante los xml de Spring o mediante anotaciones en el mismo test.

Ejemplo con anotaciones

Agregar la siguiente dependencia en el pom.xm del proyecto.

<dependencies>

    ...
    <dependency>
      <groupId>org.kubek2k</groupId>
      <artifactId>springockito-annotations</artifactId>
      <version>1.0.8</version>
      <scope>test</scope>
    </dependency>
    ...

</dependencies>

En el ejemplo se prueba el método "talk" de la clase "VoiceService", el cual debe ejecutar una o dos veces el método "play" de la clase "Audio". Esta ultima es la clase que mockeamos para verificar las ejecuciones de su métodos.

@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(loader = SpringockitoContextLoader.class,

       locations = {"classpath:spring/jenkins-speech-integration-test.xml"})

@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD) public class VoiceServiceTest {

   @Autowired
   private VoiceService instance;
   
   @ReplaceWithMock
   @Autowired
   private Audio audio;
   @Test
   public void talk_messageWithPreSound_executePlayMethodTwoTimes() throws Exception {
       String message = "Hola";
       instance.talk(message);
       verify(audio, times(2)).play((InputStream) any());
   }
   @Test
   public void talk_messageWithoutPreSound_executePlayMethodOneTimes() throws Exception {
       instance.setPreSound("");
       String message = "Hola";
       instance.talk(message);
       verify(audio, times(1)).play((InputStream) any());
   }

}

En el atributo “loader” de la anotación “ContextConfiguration” hay que setear la clase “SpringockitoContextLoader” de Springockito, esta clase es la encargada de realizar las sustituciones de las clases reales por los mocks.

Ver También