我想用EMMA來測量一些使用JMockit的JUnit測試的覆蓋率。但是,當我嘗試EMMA插裝,關於測試的四分之一後運行JMockit測試失敗,出現以下錯誤:使用JMockit和EMMA的ClassFormatError
com.logstorage.engine.sensor.SensorManagerTest.setUpBeforeClass(SensorManagerTest.java:98)
java.lang.ClassFormatError
at sun.instrument.InstrumentationImpl.redefineClasses0(Native Method)
at sun.instrument.InstrumentationImpl.redefineClasses(InstrumentationImpl.java:150)
at mockit.internal.RedefinitionEngine.redefineMethods(RedefinitionEngine.java:152)
at mockit.internal.RedefinitionEngine.redefineMethods(RedefinitionEngine.java:139)
at mockit.internal.RedefinitionEngine.redefineMethods(RedefinitionEngine.java:73)
at mockit.Mockit.setUpMock(Mockit.java:235)
at com.myapp.MyTest.setUpBeforeClass(MyTest.java:98)
我看不到任何模式爲哪些測試失敗,哪些沒有。我想這只是JMockit中的一個錯誤,但有沒有人知道解決方法?
我發現了一個非常類似的問題,名爲「與EMMA獲取ClassFormatError?」但解決方案不適合我(我沒有使用任何reentrant = true模擬方法)。任何其他想法?
在此先感謝。
它必須是月球的排列。沒有任何變化,兩天前我沒有收到這個錯誤! – 2009-05-28 21:15:34