moja klasa badanego posiada tę metodęMockito wzór do rozmowy Wiosna usług internetowych
public SomeWebServiceResponse callDownstream(SomeWebServiceRequest request) {
return (SomeWebServiceResponse) super.callService(request);
}
super metoda jest po prostu wywołanie Spring WS, aby nawiązać połączenie - w uproszczonej formie
response = getWebServiceTemplate().marshalSendAndReceive(this.getBaseURL(),
request);
return response;
Kiedy piszę test jednostkowy, próbował wykonać rzeczywiste wywołanie usługi internetowej. Nie wiem, jak kpić z tego, a raczej z kpiny.
Powinieneś ładować przykładową odpowiedź z systemu plików i szukać w niej jakiegoś ciągu - w tym przypadku testuję tylko ładowanie pliku.
Rzeczywiste połączenie jest w klasie bazowej i wiem, że nie możemy kpić z tej metody. Jakieś wskazówki?
Przepraszamy za mój poprzedni komentarz. Myślę, że nie bardzo rozumiałem problem. Podam próbkę wykonania testów jednostkowych z serwerem usługi próbnej Spring. –
Prześmiewanie całej usługi internetowej, w tym wysyłanie i odbieranie wiadomości (pierwszy przykład kodu), jest w rzeczywistości czymś więcej niż testem jednostkowym - jest to test integracyjny, jak również wskazany w wiosennym podręczniku. Jeśli potrzebujesz tylko testu jednostkowego, powinieneś trzymać się Mockito (drugi przykład kodu). – Justus