Emma와 함께 Classformaterror를 얻습니까?
-
05-07-2019 - |
문제
코드 커버리지 보고서를 생성하려고합니다 엠마 일부 사용 테스트를 사용합니다 jmockit 조롱 프레임 워크로. 대부분의 경우 작동하지만 몇 가지 테스트가 ClassFormaterror와 함께 충돌합니다.
java.lang.ClassFormatError
at sun.instrument.InstrumentationImpl.redefineClasses0(Native Method)
at sun.instrument.InstrumentationImpl.redefineClasses(InstrumentationImpl.java:79)
at mockit.internal.RedefinitionEngine.redefineMethods(RedefinitionEngine.java:138)
at mockit.internal.RedefinitionEngine.redefineMethods(RedefinitionEngine.java:73)
at mockit.Mockit.setUpMocks(Mockit.java:177)
at test.my.UnitTest.setUpBeforeClass(UnitTest.java:21)
무슨 일이 일어나고 있는지, 문제를 해결할 수 있는지 아는 사람이 있습니까? 아니면 Emma와 Jmockit이 상호 배타적입니까?
해결책
Jmockit의 버그 인 것 같습니다 : 클래스가 이미 Emma에 의해 계측 된 후 Jmockit은 "reentry = true"mock 메소드를 만드는 데 문제가있는 것 같습니다.
"Reentry = true"를 제거하면 문제가 해결되었습니다.
다른 팁
이 "reentry = true"를 제거하는 위치와 방법에서
제휴하지 않습니다 StackOverflow