La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

No es.... Mockito - Mockito es una librería Java para la creación de Mock Object. - Muy usados para el testeo unitario en Test Driven Development,

Presentaciones similares


Presentación del tema: "No es.... Mockito - Mockito es una librería Java para la creación de Mock Object. - Muy usados para el testeo unitario en Test Driven Development,"— Transcripción de la presentación:

1

2

3 No es....

4 Mockito - Mockito es una librería Java para la creación de Mock Object. - Muy usados para el testeo unitario en Test Driven Development, - Basado en EasyMock. - Es OpenSource. disponible en http://mockito.org

5 Características 1. Se pueden crear mocks de interfaces y clases concretas. 2. Verificación de invocaciones (cantidad exacta, al menos una vez, órden de invocación, etc.) 3. El stack trace se mantiene limpio, ya que los errores ocurren en los assert que se hagan (y no dentro del método bajo prueba, como en EasyMock). 4. Un API más clara para crear stubs y verificaciones

6 No da resaca

7

8 Dan North, the originator of BDD "We decided during the main conference that we should use JUnit 4 and Mockito because we think they are the future of TDD and mocking in Java"

9 Fases // 1. Creación del Mock List mock = mock(List.class); // 2. Descripición del comportamiento esperado when(mock.get(0)).thenReturn("one"); when(mock.get(1)).thenReturn("two"); // 3. Ejecución del método - uso del mock someCodeThatInteractsWithMock(); // 4. Verificación verify(mock).clear();

10 EasyMock vs Mockito EasyMock List mock = createNiceMock(List.class); expect(mock.get(0)).andStubReturn("o ne"); expect(mock.get(1)).andStubReturn( "two"); mock.clear(); replay(mock); someCodeThatInteractsWithMock(); verify(mock); Mockito List mock = mock(List.class); when(mock.get(0)).thenReturn("one"); when(mock.get(1)).thenReturn("two"); someCodeThatInteractsWithMock(); verify(mock).clear();

11 Demo Test Carrito de Compras

12 Demo - Instalación Maven junit 4.9 jar test org.mockito mockito-core 1.9.0-rc1 jar test

13 Demo Agregar un producto al carrito public void agregar(Producto producto){ Item item = items.get(producto); if(item != null){ item.incrementaCantidad(); }else{ Items.put(producto, new Item(producto)); }

14 Demo 1er Test: Cuando se agrega un producto nuevo se verifica que se esté añadiendo un nuevo item a la lista @Test public void testAgregaProductoNuevo(){ when(items.get(producto)).thenReturn(null); manager.agregar(producto); verify(items).put((Producto)anyObject(), (Item)anyObject()); }

15 Demo 2do Test: Cuando se agrega un producto que ya se encuentra en la lista se verifica que se incremente la cantidad para el item. @Test public void testAgregaProductoRepetitivo(){ when(items.get(any())).thenReturn(item); manager.agregar(producto); verify(item,times(1)).incrementaCantidad(); }

16 Demo URL : https://github.com/Teisen/CarritoComprasMock

17 Follow me! Twitter: @jteisen GitHub: Teisen Blog: www.aulajava.com/teisen e-mail : teisen@aulajava.com


Descargar ppt "No es.... Mockito - Mockito es una librería Java para la creación de Mock Object. - Muy usados para el testeo unitario en Test Driven Development,"

Presentaciones similares


Anuncios Google