Ich bin neu zu Mockito, also versuche ich, mit einigen grundlegenden Beispielen zu lernen.Mockito failing grundlegendes Beispiel
Hier ist mein Service.
public class MyCoolServiceImpl implements MyCoolService{
public String getName() {
return "String from service";
}
}
MyCoolService
ist nur eine Schnittstelle
public interface MyCoolService {
public String getName();
}
Und ich habe einen einfachen Anwendungsfall:
public class SomeUseCase {
private MyCoolService service = new MyCoolServiceImpl();
public String getNameFromService(){
return service.getName();
}
}
Mothing kompliziert. Also habe ich meine Testklasse wie folgt schreiben:
public class SomeUseCaseTest {
@Mock
MyCoolService service;
SomeUseCase useCase = new SomeUseCase();
@Before
public void setUp(){
initMocks(this);
when(service.getName()).thenReturn("String from mockito");
}
@Test
public void getNameTest(){
String str = useCase.getNameFromService();
assertEquals("String from mockito", str);
}
}
So, wie ich sie verstehe, str
sollte "String from mockito"
enthält, da ich Mockito sage, dass die Zeichenfolge zurück, wenn service.getName()
genannt wird, aber mein Test schlägt fehl, weil es gibt "String from service"
.
Was fehlt mir hier? Habe ich missverstanden, wie Mockito funktioniert?
Es funktioniert gut. Vielen Dank! – Manu