問題タブ [robolectric-gradle-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
7490 参照

android - Android Studio 1.1.0 で Robolectric を動作させるためのマニフェストとセットアップの問題

現在のプロジェクトで Robolectric テストを実行して動作させようとしていますが、うまくいきません。私の好みは、これらを Android Studio 1.1.0+ 内で実行することです。これは私のプロジェクト構造です:

ここに画像の説明を入力

ここに私のテストがあります:

マニフェストへのパスを変更してフレームワークにテストを見つけさせるために何をしようとしても、それを見つけることができません-WARNING: No manifest file found at ./AndroidManifest.xml.Falling back to the Android OS resources only.メッセージまたはAPI Level XX is not supported - Sorry!メッセージを取得します。最後に、これがテストの実行時に次のエラーが発生する理由だと思います。

私は実験的なオプションをオンにしており、適切な Gradle プラグインを構成しています (単体テストは正常に動作します) が、インストルメンテーション テストを実行するために何が欠けているのかわかりません。

アプリレベルのビルド ファイル:

最上位ビルド ファイル:

0 投票する
1 に答える
1266 参照

android - Robolectric 単体テストの実行が失敗する

Robolectrie テスト フレームワークを介して単体テストをビルドして実行しようとしていますが、使用している実際のプラグインが原因で実行できません

ここに私が試した私のビルドスクリプトがあります

ここに簡単なテストクラスがあります

ここに私が得るエラーがあります

次に、別のプラグイン、つまり com.github.jcandksolutions.gradle:android-unit-test:2.1.1' を試しましたが、まだ機能しませんでした。以下は、グレード構築スクリプトと出力です。

エラー

0 投票する
1 に答える
894 参照

android - Proguard の問題 Roboguice 重複インポート

gradle ビルドを実行すると問題が発生します。重複した依存関係がインポートされているようですが、デバッグが難しいため、提案は素晴らしいでしょう。

java.io.IOException: Can't write [.......\build\intermediates\classes-proguard\debug\classes.jar] (Can't read [.......gradle\caches\ modules-2\files-2.1\org.roboguice\roboguice\3.0.1\24e814f35d5cc28eaa7e9f07a50ea69deeb2b544\roboguice-3.0.1.jar(;;;;;;!META-INF/MANIFEST.MF)] (重複する zip エントリ [roboguice -3.0.1.jar:javax/inject/Inject.class]))

0 投票する
0 に答える
669 参照

android - proguard で Robolectric を実行する

テストの依存関係は次のとおりです。

そして、私のdebugビルドタイプはminifyEnabled true、DEX メソッドの制限に達しないようにしています。完全な建物は次のように定義されます。

デフォルトのファイルとフレーバー用のproguard-rules.pro追加ファイルがあります。proguard-rules-debug.pro

:proguardDevelopDebug私が持っているオプションに基づいて、gradleタスクは正常に通過します。ただし、:proguardDevelopDebugAndroidTest次のエラーで失敗します: http://pastebin.com/S623UGfP

ファイルに次を追加したので、これは奇妙です:

この2つが一緒に働かない理由はありますか?

0 投票する
1 に答える
1653 参照

android - Robolectric 2.4 の android.content.res.Resources$NotFoundException

コマンド ラインから単体テストを実行するときに、リソースの読み込みに問題があります。IntelliJ で問題なく動作します。

私は使用しています:

  • com.android.tools.build:gradle:1.1.3
  • org.robolectric:robolectric-gradle-plugin:1.0.1
  • org.robolectric:robolectric:2.4

私は次のプロジェクト構造(マルチモジュール)を持っています:

私のテスト(簡略化)は次のようになります。

私はこのスタックトレースを取得します:

:私はGradleを初めて使用するので、どこかに設定ミスがある可能性があります。プロジェクト構造の規則に従うことで、リソースの場所を指定する必要がないと想定しました。私はそれらを指定しようとしましたが、運がありませんでした:

0 投票する
1 に答える
1326 参照

android - Robolectric 3 でシャドウ クラスを作成できない

Robolectric のドキュメントに従ってシャドウ クラスを作成しましたが、テスト中にシャドウ メソッドを実行できず、常に元のメソッドが使用されます。

これは私のコードです:

元のクラス:

シャドウ クラス:

テスト:

テストを実行すると、常に表示されます"Hi from original class!"

私のコードで何が間違っていますか? 私は使用します

  • Android スタジオ 1.2
  • ロボレクトリック 3.0-rc2
  • robolectric-gradle-plugin 1.0.1

この問題を解決するにはどうすればよいですか?

前もって感謝します