質問

EMMA でコードカバレッジレポートを生成しようとしていますが、一部のテストでは 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"の作成に問題があるようです。モックメソッド。

" reentry = true"の削除「回避策」問題。

他のヒント

この" reentry = true"を削除する場所と方法から

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top