Készítette: Zelenka Gábor Mock frameworks Készítette: Zelenka Gábor
Mi is az a mock? El kell szigetelni a teszt osztályt Függőségeket szűkíteni->hiba könnyen detektálható Olyan objektumot adni a teszt osztálynak (ha kell), ami olyan mint az eredeti de ellenőrzött visszatérési értékei vannak
) Mock frameworks 1. Mock objektum készítés ClassB mock = createMock(ClassB.class); 2.Mit tegyen a metódus amikor meghívják expect(mock.go()).andThrow(new RuntimeException()); 3.Hányszor hívják meg expectLastCall().times(3); 4. Test kód végrehajtás 5. Verifikáció verify(mock);
Gyakori mock freamwork features Visszatérési érték a stub metódusoknak when(mock.isDone()).thenReturn(true); Kivétel dobás híváskor when(mock.do()).thenThrow(new CantDoException()); Meghívás számlálás ellenőrzés Paraméter ellenőrzés allowing(calculatorMock).sqrt(with(lessThan(0)); Hívás sorrend ellenőrzés Iterátor-stílusú reakció Callback hívás a stub metódusból Final osztály,metódus, statikus és privát adattagok mockolása
Mock frameworks összehasonlítás 2/1
Mock framework összehasonlítás 2/2
EasyMock
JMock
Mockito
Unitils
Köszönöm a figyelmet!