民芸的プログラミング 〜ソフトウェア開発日記〜

アクセスカウンタ

zoom RSS Androidプログラミングのテストで、テスト用のAssetsを読み込む方法

<<   作成日時 : 2015/12/12 20:52   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

今日、Android用のプログラムを書いていて、すぐに分からなかった事項なのでここにメモ。

JUnitでAndroidのUnitTest用のコードを書いていたのだが、普通にgetAssetsすると、本番プロジェクトのassetsフォルダが参照されてしまい、テストプロジェクト側のassetsフォルダが参照されなくて難渋した。

そこで調べて出てきたのが、StackOverflow の以下の記事
http://stackoverflow.com/questions/9898634/how-to-provide-data-files-for-android-unit-tests

日本語にざっくり要約すると、

テスト用の静的データを用意して、テストプロジェクトのassetsフォルダから読み込む方法。

getInstrumentation().getContext().getResources().getAssets().open("hoge.dat");


ちなみに、JUnit側から本番プロジェクトのassetsフォルダ内のファイルを参照したい場合は

getInstrumentation().getTargetContext().getResources().getAssets().open("hoge.dat");

とやればよい。

これでうまくいった。

こんな方法もあるらしいけれど、

InputStream in = this.getClass().getClassLoader().getResourceAsStream("assets/hoge.dat");

これはちょっと意味合いが違ってくるか。
まあ、動けばいいというときのために知っておいて損はない。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
Androidプログラミングのテストで、テスト用のAssetsを読み込む方法 民芸的プログラミング 〜ソフトウェア開発日記〜/BIGLOBEウェブリブログ
文字サイズ:       閉じる