在我的robolectric测试中,我试图读取文件。
由于此文件仅包含测试数据,因此已将其放入测试 Assets 中。
目录结构如下所示。src/main/assets/prod_data_file
src/test/assets/test_data_file
但是,当我尝试通过getShadowApplication().getAssets().open(MY_FILE_PATH)
读取文件时,它给了我FileNotFoundException
。
有人知道如何解决此问题吗?
最佳答案
由于我的测试只是读取这些文件并以String
的形式返回文件数据,因此我可以通过getClass().getClassLoader().getResourceAsStream(MY_FILE_PATH)
做到这一点,然后读取文件。确实不需要阅读即可使用getShadowApplication().getAssets().open(MY_FILE_PATH)
。
我只是将测试数据文件移动到src/test/resources
,并且可以正常工作。 :)