2012-02-17 73 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)修復了這個問題。