[英]java.lang.IllegalStateException: missing behavior definition for the preceding method call getMessage(“title”)
[英]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.