0

私は現在、さまざまなAndroidTestCases使用方法Mockitoとモジュールを持っていますdexmaker-mockitoRobolectricを使用してテストケースを追加しようとしていrobolectric pluginます。引数なしでメソッドをモックしようとするとIllegalArgumentExceptionfromが得られることを除いて、すべて正常に実行されていDexmakerます。依存関係を削除し、代わりにdexmaker-mockitomockito バージョンを使用すると、エラーはなくなりますが、すべての AndroidTestCases が失敗します。とにかく私のテストケースから除外することはありますか? または、AndroidスタジオからAndroidユニットテストとRobolectricユニットテストの両方を実行する他の方法を知っている人はいますか?1.9.01.9.5gradledexmaker-mockitorobolectric

Error: java.lang.IllegalArgumentException at com.google.dexmaker.mockito.InvocationHandlerAdapter.invoke

アップデート

試しgradle-android-test-pluginてみましたが、のバージョンをに変更し、依存関係からを削除せずに、robolectric-gradle-pluginを取り除くことができませんでした。IllegalArguementExceptionmockitio1.9.0dexmakerdexmaker-mockito

ガイドを試してみましたが、ビルドを壊すメインまたはテスト ソース セットにソース ディレクトリを追加せずに Android Studio にソース ディレクトリを認識させることができませんでした。

今回はこちらのガイドに従うことになりましたが、コマンドラインからテストを実行するとエラーは消えましたが、奇妙なことがわかったAndroidスタジオから実行するとエラーが持続しました。再度、mockitio のバージョンを 1.9.0 に変更し、Android アプリの依存関係から , を削除すると、エラーが削除されましたdexmakerdexmaker-mockito今のところ、より良い答えが見つかるまで、Android Studio から単体テストを実行できないことに落ち着きます。

4

1 に答える 1

0

dexmaker-mockito が何をすべきかを正しく理解していれば、デバイス上で実行される Android ユニット テストで使用することを意図しているため、Android テスト ケースに適しています。

Robolectric テストは JVM で実行され、Android テストではなく JUnit テストとして実行する必要があります。デバイスにデプロイされることはないため、dexmaker-mockito を使用しないでください。通常の Mockito ライブラリを使用して、スコープをテストに設定できます。

2つを混在させることはできないと思います.2つがAndroidユニットテストとは別にロボテストを保持している可能性があります.

于 2014-09-23T10:22:38.790 に答える