2016-05-04 9 views
0

Ich benutze 1.3.3.RELEASE Version von Spring Boot.Mocktesting RestTemplate mit Mockito im Frühjahr Boot neueste Version

Ich versuche Unit-Test mein Service, der RestTemplate verwendet, um eine URL zum Abrufen von HTML-Seite aufzurufen.

Dies ist der Code

Mockito.when(restTemplate.exchange( 
Mockito.anyString(), 
Mockito.any(HttpMethod.class), 
Mockito.any(HttpEntity.class), 
Mockito.any(Class.class))) 
.thenReturn(new ResponseEntity<String>("", 
new HttpHeaders(), HttpStatus.OK)); 

Aber thenReturn Teil Fragen ist zu müssen. Was könnte die richtige Konstruktion von ResponseEntity sein, um eine HTML-Seite zu bekommen?

Schätzen Sie jede Hilfe.

Dank

+0

Was ist der Fehler, den Sie bekommen? – cowls

+0

Der Fehler, den ich bekomme, ist org.mockito.exceptions.misusing.WrongTypeOfReturnValue: ResponseEntity kann nicht von toString() zurückgegeben werden toString() sollte String zurückgeben – user1580865

Antwort

0

Sie brauchen zu verspotten responseEntity so:

ResponseEntity<String> mockResponse = mock(ResponseEntity.class); 
when(mockResponse.getStatusCode()).thenReturn(HttpStatus.OK); 

dann wie Sie zuvor:

when(mockRestTemplate.exchange(anyString(), anyObject(), anyObject(), eq(String.class))) 
    .thenReturn(mockResponse); 
Verwandte Themen