Hallo zusammen,
da ich jetzt wieder umfangreicher Test schreiben muss, habe ich gleich von vorne herein eine Frage. Wenn ich eine Methode habe, die mehrere Services benutzen, wie im folgenden Code
Wie kann ich den Rückgabewert der Methode contactService#findByName und userNameService#findUsernameByContact mocken? Damit die export Methode ein Ergebnis von Result zurückgibt? Bei dem Beispiel greifen die Services auf eine Datenbank und holen sich da die Werte, wie kann ich in mein Test diesen Datenbankzugriff mocken?
Kann ich das mit Mockito @mock und @InjectMock erreichen? Soweit ich es verstanden habe, kann man doch ein gemockte Klasse in ein andere gemockte Klasse verpacken oder? Wenn ich folgendes mache, würde es dann für das folgende Beispiel gehen? Was passiert denn mit der Datenbankzugriff?
Grüße
lam
da ich jetzt wieder umfangreicher Test schreiben muss, habe ich gleich von vorne herein eine Frage. Wenn ich eine Methode habe, die mehrere Services benutzen, wie im folgenden Code
Code:
public Result export(String exportPath){
...
Contact contact = contactService.findByName("Max", "Mustermann");
String name = userNameService.findUsernameBy(contact);
...
}
Wie kann ich den Rückgabewert der Methode contactService#findByName und userNameService#findUsernameByContact mocken? Damit die export Methode ein Ergebnis von Result zurückgibt? Bei dem Beispiel greifen die Services auf eine Datenbank und holen sich da die Werte, wie kann ich in mein Test diesen Datenbankzugriff mocken?
Kann ich das mit Mockito @mock und @InjectMock erreichen? Soweit ich es verstanden habe, kann man doch ein gemockte Klasse in ein andere gemockte Klasse verpacken oder? Wenn ich folgendes mache, würde es dann für das folgende Beispiel gehen? Was passiert denn mit der Datenbankzugriff?
Code:
@Mock
ContactRepository contactRepository
@InjectMock
ContactService contactService
Grüße
lam
Zuletzt bearbeitet: