我有一个Restclient
类,在该类上调用GET方法时会向URL发起rest调用,我已经实现了有效的逻辑。
现在考虑一种情况,我使用Mockito来模拟Restclient
对象上的GET方法以返回适当的响应,而不是使用Wiremock。
这样做是否具有缺点,例如从主模块中覆盖的代码量,或者两者都同样好?
我有一个Restclient
类,在该类上调用GET方法时会向URL发起rest调用,我已经实现了有效的逻辑。
现在考虑一种情况,我使用Mockito来模拟Restclient
对象上的GET方法以返回适当的响应,而不是使用Wiremock。
这样做是否具有缺点,例如从主模块中覆盖的代码量,或者两者都同样好?
Wiremock
提供了HTTP-based APIs的模拟器,而Mockito
提供了方法/对象的Mock实现。
如果我们使用Mockito来Mock HTTP-based的方法,这意味着我们试图返回对象/响应而不测试任何代码来调用REST服务、获取HTTP响应和反序列化它们。
如果我们使用Wiremock
,我们将能够接近真实情况进行测试,因为它将测试REST调用的调用以及响应的反序列化。
https://www.linkedin.com/pulse/what-difference-between-stub-mock-virtual-service-wojciech-bulaty/是一篇很好的文章可供阅读,当然不是我写的 :-)