0

对于代码

public class A{
    public A (B b, C c){
    //do something here
    }
}

为了测试,我想创建一个模拟对象。我现在正在做的是

B bmock = mock(B);
C cmock = mock(C);
A aobject = new A(bmock, cmock);

但是,这不允许我在对象上调用 verify(),因为它没有被模拟。怎么做?

4

1 回答 1

4

您可以使用Spy

A aobject = spy(new A(bmock, cmock));

所以你实际上是在调用实现,A但仍然可以验证交互。

有关详细信息,请参阅文档: http://site.mockito.org/mockito/docs/current/org/mockito/Mockito.html#spy(T)

于 2015-10-29T14:48:32.207 回答