Ich muss einen Aufruf an die findById-Methode des GenericService verspotten.Wie verspotte ich eine Methode einer Superklasse von Mockito?
Ich habe dies:
public class UserServiceImpl extends GenericServiceImpl<User Integer> implements UserService, Serializable {
....
// This call i want mock
user = findById(user.getId());
.....
// For example this one calls mockeo well. Why is not it a call to the generic service?
book = bookService.findById(id);
Das Problem in dem ersten Mock ist, da es ein Anruf zu einem allgemeinen Dienst ist.
Die zweite Mock funktioniert gut als auch
when(bookService.findById(anyInt())).thenReturn(mockedBook);
Können Sie den Stacktrace der Fehler der Komponententest wirft hinzufügen? Es gibt normalerweise einen guten Hinweis auf das Problem, ich vermute, dass Sie die verspottete Methode findById() mehrere Male aufrufen, aber mockito wurde das nicht gesagt. Diese – emeraldjava
ist der Fehler-Stack-Stack, der die Testeinheit führt: 'java.lang.NullPointerException \t bei com.sampleCode.services.service.impl.GenericServiceImpl.findById (GenericServiceImpl.java:28) \t bei com.sampleCode .services.service.impl.UserServiceImpl.acceptUser (UserServiceImpl.java:1438) \t bei com.sampleCode.services.service.impl.UserServiceImpl.accept (UserServiceImpl.java:1421) \t bei com.sampleCode.services.UserServiceTest .testAccept (UserServiceTest.java:277) \t bei sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Methode) '... – daf0nte