【发布时间】:2011-06-08 19:07:30
【问题描述】:
我遇到了一个问题,EasyMock 为预期的(定义的)方法调用返回 null。
模拟对象的创建
mock = EasyMock.createMock(DAO.class);
单元测试中的模拟设置。
expect(mock.update(myObj).andReturn(myObjUpdated).once();
replayAll();
service.setDao(mock);
service.processData(myObj);
verifyAll();
processData 方法只是调用
MyObject objUpdated = dao.update(myObj);
这是构建模拟的接口。
public interface DAO {
public <ENTITY> ENTITY update(ENTITY entity);
}
我对可能导致问题的原因感到非常困惑。我已经确认 'obj' 与我在单元测试中定义的对象相同。我也没有使用任何其他模拟方法遇到过这个问题(我知道)。
问题可能出在传入的对象上吗?
提前致谢。我真的不确定这里还有哪些其他信息可能对您有所帮助。
编辑:这是测试类(事实证明我的误解开始了)
public class TestMyService extends EasyMockHelper {...}
【问题讨论】: