2012-02-17 74 views
1

我试图嘲弄的方法将它返回一个特定的对象:JMockit - 期望和静态方法

private static final String PARAM = "somevalue"; 
    ... 
    @Test 
    public void jmockit() { 

    final PojoClass dfault = new PojoClass(); 

    new NonStrictExpectations() { 
     StaticFacade mcfg; 
     { 
      StaticFacade.getPojo(PARAM); returns(dfault); 
     } 
    }; 

    PojoClass a = StaticFacade.getPojo(PARAM); 

    assertNotNull(a); 

} 

但我面对2个问题:

  1. 我越来越a在返回调用
  2. “没有当前可用的调用”如果我尝试添加结果变量,则会出现编译问题。

我使用的是JDK1.5。有任何想法吗?

回答

2

所以看起来最终它是一个设置问题: 我有一个旧版本的JMockit和一个eclipse签名的JUnit jar。 将jar更新到最新版本(Jmockit 0.999-12和JUnit 4.10)修复了这个问题。