我正在尝试测试restTemplate.exchange,但我的测试总是跳过Try
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
HttpEntity<String> entity = new HttpEntity<String>("parameters", headers);
String uri = resultado.getDatos().getPeticion().getUrl();
ResponseEntity<ResultadoPeticionDto> respuesta = null;
try{
respuesta = restTemplate.exchange(uri, HttpMethod.GET, entity, ResultadoPeticionDto.class);
resultado.getDatos().setFechaFin(new Date());
Calificacion calificacion = null;
resultado.getDatos().setResultado(calificacion.valueOf(respuesta.getBody().getCodigoError()));
resultado.getDatos().setMensaje(respuesta.getBody().getMensaje());
}catch (ResourceAccessException e) {
resultado.setCodigo(404);
resultado.setSuccess(false);
return resultado;
}catch (Exception e) {
resultado.setCodigo(500);
resultado.setSuccess(false);
return resultado;
}
这是我在测试中的Mockito:
Mockito.when(restTemplate.exchange(Mockito.anyString(),
Mockito.eq(HttpMethod.GET), Mockito.<HttpEntity<?>> any(),
Mockito.eq(ResultadoPeticionDto.class))).thenReturn(response);
peticionManager.peticion(resultado);
但它不起作用,在它正常运行的请求行中并跳过我的配置,我在使用
@Mock
private RestTemplate restTemplate;
@InjectMocks
PeticionManager peticionManager;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
}
在测试课上,有什么想法吗? katch捕获异常(代码500),并且在尝试成为我的测试目标时无法提供覆盖