2

私はデバイスの外部ストレージにアクセスする必要があるアプリケーションを作成しています。私は、AndroidTestCaseを拡張するテストスイートでユニットテストを書いています。必要なファイルにアクセスしようとするときに問題が発生しています。ユニットテストでのマシュマロランタイムパーミッション

これは、ユニットテストに正しいアクセス権がないことが原因と考えられます。私はアプリケーションマニフェストのパーミッションを記述しましたが、Android 6をターゲットにしているので外部ストレージへのアクセスを許可するためにテストスイート内の何かを行う必要はありますか?私はいくつかの関連記事を見てきましたが、何もこれを直接扱うようです。

EDIT: 自分のアプリのUI開発を開始していないので、起動クラスのonCreate()メソッドにコードを追加してアクセス権を要求しました。これで問題は解決し、外部ストレージにアクセスするテストを実行できるようになりましたが、今後どのようにこれを回避できますか?確かにこれを回避する適切な方法がなければならない?

+0

私が実行している – Misters

答えて

0

UiAutomatorフレームワークを使用すると、デバイスの任意の場所に移動してUI要素とやりとりすることができます。

UiObject allowButton = mUiDevice.findObject(new UiSelector().text("Allow")); 
allowButton.click(); 
+0

テストは厳密にユニットテストであり、何ら関連したUIを持っていないと同じ問題に直面しています – rpm

関連する問題