我正在为外部服务类编写单元测试,我想在Spring MockServer中模拟补丁请求。
在服务方法中,我用new HttpComponentsClientHttpRequestFactory()
覆盖了默认的restTemplate。支持PATCH请求。
restTemplate.setRequestFactory(new HttpComponentsClientHttpRequestFactory());
ResponseEntity<String> response =
restTemplate.exchange("http://localhost/test", HttpMethod.PATCH, entity, String.class);
当我尝试测试该方法时,它总是尝试连接localhost并抛出异常并说无法连接到服务器,这是我的测试方法。 我想我需要设置
@Test
public void testStatus(){
mockServer.expect(requestTo("http://localhost/test"))
.andExpect(method(HttpMethod.PATCH))
.andRespond(withStatus(HttpStatus.OK));
mockServer.verify();
}
如果我删除restTemplate.setRequestFactory(new HttpComponentsClientHttpRequestFactory());
直到通过,但实际的API调用无效。