Meine Klasse im Test haben diese MethodeMockito Muster für einen Frühling Web-Service-Aufruf
public SomeWebServiceResponse callDownstream(SomeWebServiceRequest request) {
return (SomeWebServiceResponse) super.callService(request);
}
die Super-Methode ist nur ein Aufruf zum Frühling WS, um den Anruf zu machen - in vereinfachter Form
response = getWebServiceTemplate().marshalSendAndReceive(this.getBaseURL(),
request);
return response;
Wenn ich einen Komponententest schrieb, versuchte es einen tatsächlichen Webservice-Anruf. Mir ist nicht klar, wie ich das verspotten soll oder was wir eigentlich verspotten sollten.
Sollte ich eine Beispielantwort vom Dateisystem laden und nach einer Zeichenkette darin suchen - in diesem Fall teste ich nur Dateiladen.
Der eigentliche Anruf ist in der Basisklasse und ich weiß, dass wir nur diese Methode nicht vortäuschen können. Irgendwelche Zeiger?
Entschuldigung für meinen vorherigen Kommentar. Ich glaube, ich habe das Problem nicht verstanden. Ich werde ein Beispiel für die Durchführung von Komponententests mit dem Spring-Mock-Service-Server bereitstellen. –
Das Verspotten des gesamten Web-Service einschließlich des Sendens und Empfangens einer Nachricht (erstes Codebeispiel) ist eigentlich mehr als ein Komponententest - es ist ein Integrationstest, auf den auch im verwiesenen Spring-Handbuch hingewiesen wird. Wenn Sie nur einen Komponententest benötigen, sollten Sie bei Mockito bleiben (zweites Codebeispiel). – Justus