[英]Verify a mocked object's method
说我有一个这样的班级:
public class Foo {
private Bar bar;
public Foo(Bar bar) {
this.bar = bar;
}
public void someMethod() {
bar.someOtherMethod();
}
}
调用someMethod()时,如何验证一次bar.someOtherMethod()被调用? 在测试中,我将模拟的Bar类传递给构造函数。
我的测试看起来像这样:
private Bar bar;
private Foo foo;
@Before
public void setUp() throws Exception {
bar = mock(Bar.class);
foo = new Foo(bar);
}
@Test
public void testSomeMethod() {
foo.someMethod();
verify(Bar).someOtherMethod();
}
与Mockito-
verify(mockBar, times(1)).someOtherMethod();
由于您传递的是Bar
实例,因此相对简单:
这样,您就可以在测试中采用类似的方法:
doNothing().when(mockBar).someOtherMethod();
foo.someMethod();
verify(mockBar).someOtherMethod();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.