Robolectricを使い始めたばかりなので、必要なものがかなりあるようです。しかし、私はSharedPreferencesの使用に関するいくつかの障害を打ちました。RobolectricのSharedPreferencesのテストデータを提供
私は
活動は、新しい/空のsharedPreferences
活動は、すでにその中にいくつかのデータとsharedPreferencesテスト・ケース1の場合
、期待してい見込ん2のテストケースを持っていますテストは期待どおりに合格していますので、すべてがうまくいっています:)
しかし、テストケース2では、Robolectricにいくつかの偽のデータを提供する良い方法を見つけることができないので、アクティビティはこの偽のデータにアクセスできます。
非常に一般的な使用例のように感じますが、どうやってそれを行うのかわかりません!
1にテストするためのコードスニペットを使用します! (2つ目は完璧に動作します)。私はこれを使用して、テストモードで非同期タスクを蹴飛ばさないようにしています。これは、共有のprefsに "テストモード"のブール値を設定します。 – Jimmy
ヒント:getSharedPreferencesを呼び出すテスト中のコードでは、アプリケーションコンテキストを使用していることを確認してください。そうでない場合、これは機能しません。 –
@Jimmy私はむしろカスタムビルドの設定フィールドを使ってこれを達成したいと思う:http://michiganlabs.com/string-constants-generated-gradle-build-configurations – martyglaubitz