在SpringBoot Mock服务器中模拟HTTP PATCH请求

时间:2018-12-24 03:50:58

标签: unit-testing spring-boot spring-boot-test

我正在为外部服务类编写单元测试,我想在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调用无效。

0 个答案:

没有答案