java.lang.IllegalStateException:不兼容的返回值类型

Din*_*esh 18 java unit-testing easymock java-ee

我正在使用EasyMock在测试用例中创建模拟类.

expect(entity.getType()).andReturn("string");
Run Code Online (Sandbox Code Playgroud)

Type属于String数据类型.在我的开发环境中它运行良好.但是,如果我转移到我的服务器并采取构建,它失败并出现以下错误:

java.lang.IllegalStateException: incompatible return value type
Run Code Online (Sandbox Code Playgroud)

我不知道为什么它在服务器中失败并在我的开发机器中执行.

开发EasyMock版本:2.5.2

小智 15

我刚遇到同样的问题.

我有一个部分模拟EasyMock,但忘了呼吁addMockedMethod我想要设置期望的方法.

错误信息与上述相同,我认为这有点误导.


Edu*_*rch 8

在我的情况下final,我呼吁的方法expect.所以EasyMock无法模拟方法,因此没有记录方法调用.


pal*_*int 6

确保您的entity对象不是简单的POJO(例如new Entity()),并且它是使用createMock()EasyMock 的方法创建的.