9

私はAndroidアプリに取り組んでおり、単体テスト用の新しいテストプロジェクトを作成しました。テストフィクスチャ(xmlファイルなど)を保存することをお勧めする場所と、それにアクセスするための適切な方法は何ですか?

4

3 に答える 3

2

ユニットテストまたはインストルメント化されたテスト(エスプレッソなどの使用など)を本当に意味するかどうかによって異なります...

単体テスト:

  1. あなたのフィクスチャを入れてくださいsrc/test/resources(そう例えばsrc/test/resources/fixture.json
  2. 以下を使用して、テストクラスからそれらにアクセスします。

InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("fixture.json")

計装テスト:

  1. あなたのフィクスチャを入れてくださいsrc/androidTest/assets/(そう例えばsrc/androidTest/assets/fixture.json
  2. 以下を使用して、テストクラスからそれらにアクセスします。

InputStream is = InstrumentationRegistry.getContext().getResources().getAssets().open("fixture.json")

に変換する方法の例を次にInputStream示しますString

これは、さまざまなケースを説明するかなり良い投稿です。


PS私はこの質問が6歳以上であることを知っています...将来の検索に答えます。

于 2018-09-05T19:39:29.793 に答える
1

いくつかの検索の後、Android にフィクスチャを保存する適切な方法がないことがわかりました(Java でもそうではありません)。

フィクスチャは、テスト ケースに渡される簡単で一貫性のあるデータを提供する方法です。.javaオブジェクトを返す静的メソッドを持つクラスを作成することは、1 つの方法です。

例:

public class Pojos {

    public static List<TaskListItem> taskListItems() {
        return Arrays.asList(
                new TaskListItem("one"),
                new TaskListItem("two"),
                new TaskListItem("three")
        );
    }
}
于 2017-11-21T08:17:05.860 に答える