繁体   English   中英

使用Mockito间谍在不指定确切参数的情况下模拟方法

[英]Using Mockito spy to mock a method without specifying the exact argument

我有一个用例,其中我必须测试调用内部方法的真实方法。 此内部方法必须被模拟。 例如,

Class Sample {
   boolean method(Foo foo) {
     return innerMethod(new Goo(foo));
   }
}

所以我想做以下事情。

Sample sample = Mockito.spy(new Sample());
Foo foo = new Foo();
doReturn(false).when(sample).innerMethod(new Goo(foo));

assertEquals(false, sample.method(foo));

我想问题是,内部方法永远不会被嘲笑,因为参数Goo是不同的对象。 我该如何解决这个问题?

使用Matcher.any()方法。

doReturn(false).when(sample).innerMethod(Matcher.any(Goo.class));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM