使用Android Studio運行Espresso測試時,在寫入內部存儲時收到異常: java.io.FileNotFoundException:/ storage/emulated/0/MyCache:open failed:EACCES(Permission denied )用於Espresso測試的AndroidManifest.xml
我明白這個問題是由於缺乏權限造成的。
我的問題是,我是否必須爲Espresso測試創建額外的AndroidManifest文件,還是應該從應用程序本身使用現有的AndroidManifest文件? 我已經嘗試了第二個選項,但似乎MainActivityTest是不是我的應用程序的AndroidManifest.xml
請參考附件打印屏幕上可見:
寫入內部存儲器時使用哪種上下文? – denys
我在MainActivityTest上運行這是我的Espresso測試應用程序 –
通過InstrumentationRegistry.getTargetContext()可以訪問應用程序測試(AUT)上下文。所以如果你已經在AUT中聲明瞭需要的權限,那麼你可以使用它的上下文。其他可能性是將您的緩存文件保存在AUT內或測試應用程序包存儲 - data/data/com.your.package/files/cache_file中。那麼你根本不需要許可。 – denys