【发布时间】:2017-02-07 09:29:32
【问题描述】:
在间谍对象上调用方法不知何故对真正的间谍对象没有影响:
public class AAA {
public int a;
public void setA(int aa) {
this.a = aa;
}
public int getA() {
return a;
}
}
public class Proof {
@Test
public void wtf() {
AAA obj = new AAA();
AAA spy = Mockito.spy(obj);
spy.setA(22);
assertThat(obj.getA(), equalTo(22));
}
}
怎么可能?我想Proof 测试应该通过了。
【问题讨论】:
-
这看起来像预期的行为?我对 Mockito 和间谍活动不太熟悉,但从文档中我看到
wtf测试用例不应该通过。您正在断言obj而不是spy。
标签: java unit-testing junit mockito