簡體   English   中英

java.lang.IllegalStateException:前面的方法調用getLast(...)的行為定義缺失

[英]java.lang.IllegalStateException: missing behavior definition for the preceding method call getLast(…)

我已經閱讀所以像類似的問題這樣 ,但我解決不了我的問題。 我已經修改了一個現有的類,當我嘗試使用ant構建它時,出現以下單元測試失敗錯誤:

java.lang.IllegalStateException:在org.easymock.internal.MockInvocationHandler.invoke(MockInvocationHandler.java:43)處的前述方法調用getLast(class mypackage.model.MyObj,1)的行為定義缺失.invoke(ObjectMethodsFilter.java:73)在org.easymock.internal.ClassProxyFactory $ MockMethodInterceptor.intercept(ClassProxyFactory.java:92)在mypackage.service.MyService $$ EnhancerByCGLIB $$ 347f5838.getLast()在mypackage.controller.MyController .myControllerMethod(MyController.java:265)位於mypackage.controller.MyController.myControllerMethodTest(MyControllerTest.java:207)

MyController.java我添加了一段代碼(錯誤在第265行):

263. public void myControllerMethod(Integer id) {
264.   String myString = null;
265.   MyObj myObj = (MyObj) myService.getLast(MyObj.class, id);
266.   try {
267.     myString = myObj.getMyProp().getMyObj();
268.   } catch (Exception e) {
269.     myString = "";
270.   }

MyControllerTest.java只需調用myControllerMethod ,例如:

207. myController.myControllerMethod(1);

我已經嘗試在第207行之前添加“期望”,例如:

206. EasyMock.expect(myServiceMock.getLast(MyObj.class, 1));

而不是:

206. EasyMock.expect(myServiceMock.getLast(MyObj.class, 1)).andReturn(new MyObj());

但無濟於事。 有人可以幫我嗎?

好的,我在示例中發現了EasyMock.replay(myServiceMock)

這是對之前插入的期望的一種“激活”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM