2011-08-26 57 views
8

我在我的单元测试下面的代码片段,EasyMock的:嘲笑对象调用实际方法

ClassToBeMocked mock = createMock(ClassToBeMocked.class); //I've statically imported EasyMock.* 
mock.callMethod(); //This is a void method 
expectLastCall(); 
replay(mock); 

但是当我运行测试,而不是seeting了expectaion的,callMethod()实际上是调用。难道我做错了什么?

我对EasyMock或任何模拟框架都比较陌生,并且因为这个问题而被阻塞。任何帮助将不胜感激。

感谢, AndyS

+0

ClassToBeMocked是一个具体的类还是一个接口?另外,你使用的是哪个版本的EasyMock? –

回答

8

这将如果你是嘲讽与“最终”方法的类发生。 EasyMock不会覆盖最终的方法。如果您不能模拟一个界面,并且您不能将该方法更改为非最终方法,则可以使用PowerMock以及EasyMock来解决此限制。该具体用例描述为here