使用 Mockito 未调用 Object 参数的验证方法
Posted
技术标签:
【中文标题】使用 Mockito 未调用 Object 参数的验证方法【英文标题】:Verify method with Object argument not called using Mockito 【发布时间】:2021-07-24 06:44:12 【问题描述】:我在DatabaseService
类中有一个带有签名public void save(Object object)
的方法。
我有一个调用该方法的代码块:
databaseService.save(bypassCode)
if(condition to check if user details have been changed)
databaseService.save(user)
如果我想测试 databaseService.save(user) 没有被调用,那么我该如何使用 Mockito(版本 3.3.3)呢?
【问题讨论】:
【参考方案1】:我相信你可以这样做:
Mockito.verify(databaseService, Mockito.never()).save(user);
【讨论】:
【参考方案2】:问题已经通过几个选项得到了回答
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
// ...
verify(dependency, never()).someMethod();
或
verifyZeroInteractions(yourMock)
How to verify that a specific method was not called using Mockito?
【讨论】:
以上是关于使用 Mockito 未调用 Object 参数的验证方法的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Mockito 验证带有 ByteBuffer 参数的调用?