I am trying to use EMMA to measure the coverage of some JUnit tests that use JMockit. But when I try to run JMockit tests after using EMMA, about a quarter of the tests fail with the following error:
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)
I do not see any pattern as to which tests fail and which do not. I think this is just a bug in JMockit, but does anyone know of a workaround?
I found a very similar question called "Getting ClassFormatError with EMMA?" but the solution does not work for me (I do not use any reentrant = true mock methods). Any other ideas?
Thanks in advance.
source
share