【发布时间】:2020-03-08 13:21:18
【问题描述】:
我有一个使用RestTemplate 的方法。我使用以下代码拨打电话:
final ResponseEntity<RESTResponse> responseEntity = restTemplate.exchange(uri,
HttpMethod.POST,
httpEntityWithHeaders,
RESTResponse.class);
httpEntityWithHeads 的类型为 HttpEntity<String>。我正在编写一个测试并尝试模拟 RestTemplate 以便当它调用 exchange 方法时,它会抛出异常。
我试图像这样模拟它:
when(restTemplate.exchange(
ArgumentMatchers.contains(randomHost),
ArgumentMatchers.eq(HttpMethod.POST),
ArgumentMatchers.<HttpEntity<List<String>>>any(),
ArgumentMatchers.<ParameterizedTypeReference<List<RESTResponse>>>any())
).thenThrow(new ResourceAccessException("Random exception message."));
但是在运行测试时,它不会抛出异常,它只是继续。
有什么建议吗?
【问题讨论】:
-
这能回答你的问题吗? How do I mock a REST template exchange?