MockRestServiceServer.expect与Mockito.when

时间:2019-07-19 07:44:00

标签: mockito spring-test spring-rest

我正在学习集成测试与其余API通信的spring应用程序。我从这个article中发现,弹簧测试支持两种方法,即我假设相同。

  1. 使用MockRestServiceServer
  2. 创建一个模拟服务器
  3. 使用Mockito
  4. 创建模拟对象

我知道前者截获http请求然后返回对象,而后者直接返回对象,而完全不打扰任何http请求。既然最后,至少在大多数情况下,我们只验证检索到的对象并将其与预期结果进行比较,如果我选择其中之一,测试结果是否会有差异?选择一个比另一个有什么优势吗?还是具体来说,在什么情况下我更喜欢一个而不是另一个?

1 个答案:

答案 0 :(得分:0)

Mockito模拟出restTemplate的所有内部部分,并直接将响应返回给方法。

MockRestServiceServer允许restTemplate在httpClient调用之前运行所有操作。

这意味着您将使用MockRestServiceServer测试错误处理,映射等。