2009-05-13 4 views
6

デバッガは、私はRAD 7.5.2を使用しています、とJUnitテストを書いています.....誰かのために、ここでうまくいけば、簡単な質問JMockit

を動作しません。私はJUnit 3でうまく書いていましたが、その後いくつかの関数呼び出しをモックアップしたいと思っていました。そこでjmockit 0.9.7とJunit 4.6をロードしました。 VM引数として-javaagent:jmockit.jarも追加しました。

私が「Run As Junit Test」を実行すると、問題なく続きます(少なくとも、出力には表示されません)。 Junitの出力は良好で、エラーはコンソールにダンプされません。

私が「Junit Testとしてデバッグ」すると、動作しません。それはに私をダンプします。

InstrumentationImpl.class - >ソース

を見つけていない...と私は継続打ったとき....

NativeMethodAccessorImpl.class - >ソース

が見つかりません

...そして私がヒットしたとき...

この後、JUnitが終了します。 sun.reflect.NativeMethodAccessorImpl.invokeでsun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド) で「メイン」スレッドにjava.lang.reflect.InvocationTargetException に


例外:それは、コンソールに次のダンプsun.instrument.InstrumentationImpl.loadClassAndCallPremainでjava.lang.reflect.Method.invoke(Method.java:618)でsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)で(NativeMethodAccessorImpl.java:79) (InstrumentationImpl.java:160) 原因:java.lang.UnsatisfiedLinkError:sun/instrument/InstrumentationImpl.redefineClasses0([Ljava/mockit.internal.RedefinitionEngine.redefineMethodsでmockit.internal.RedefinitionEngine.redefineMethodsでsun.instrument.InstrumentationImpl.redefineClasses(InstrumentationImpl.java:98で)V ) (RedefinitionEngine.java:197) (; LANG /器具/ ClassDefinitionオブRedefinitionEngine.java:184)mockit.internal.RedefinitionEngine.redefineMethods(RedefinitionEngine.java:116)mockit.internal.Startup.loadInternalStartupMocksでmockit.internal.RedefinitionEngine.setUpInternalStartupMock(RedefinitionEngine.java:53) で(起動時 。 java:123) at mockit.internal.Startup.initialize(Startup.java:110) at mockit.internal.Startup.premain(Startup.java:97) ... 5もっと見る

致命的なエラー:-javaagentの処理は


を失敗した私は、私は-javaagent使用するとき、それはだ、何の問題もなく私のテストでのJUnit 3とJUnit 4の両方を実行することができます。デバッガでjmockit.jarを(; JMockitのものを使うためには、私はそれをしなくてはなりません。

思考?

+0

私は、バイナリが実際にソースコードと整合していない別の問題を、持っていました。 – zinking

答えて

1

JMockitを使用するJUnitテスト(JVM引数 "-javaagent"の有無にかかわらず)をデバッグモードで定期的に実行し、問題は一度も発生しませんでした。

"Junitテストとしてデバッグ"設定のクラスパスが "Run As Junit Test"の設定と同じであることを確認してください。 UnsatisfiedLinkErrorがあるので、いくつかのjarファイルがないことがあります。

ことがエラーの原因でない場合は、多分それはRAD 7.5.2に固有のものです...

+0

RAD 7.5.5でも起こっています。 Jacobと同じ症状が説明された。 – Greg

関連する問題