Android Test 入門者です。
Android でUtilsクラスのテスト(Local unit tests)をしたのですが、あるメソッドで下記のような外部ストレージのパスを返却するものがあってこれのテストがエラーになり困っています。
android.os.Environment.getexternalstoragedirectory().getPath()
java.lang.ClassNotFoundException: android.app.Application
今回の件に限らず、こういった一般的にどのようにするのが正しいのか?(モックを作る?そもそもテストできない?)が今ひとつわかっていです。よろしくお願いします。
**FileUtilsTest.java
**
java
1@RunWith(RobolectricTestRunner.class) 2public class FileUtilsTest { 3 @Test 4 public void getVideoDir() throws Exception { 5 File videoDir = FileUtils.getVideoDir(); 6 7 //Never null 8 assertThat("never null", videoDir, notNullValue()); 9 10 //Check the dir exist 11 assertThat("Is exist", videoDir.exists(), is(true)); 12 13 //Check result 14 15 } 16 17.... 18}
FileUtils.java
java
1public class FileUtils { 2 3 private static final String DIR_VIDEO = "/sample/note/video"; 4 public static File getVideoDir() { 5 File dir = new File(getVideoPath()); 6 dir.mkdirs(); 7 return dir; 8 } 9 10 public static String getVideoPath() { 11 return Environment.getExternalStorageDirectory().getPath() + DIR_VIDEO; 12 } 13}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。