我有一个Gradle项目,具有以下结构:
project/ src/ androidTest/ java/ main/ java/ res/ AndroidManifest.xml build.gradle
现在我想添加一个使用资源(“原始”或“资产”)的单元测试.
我将资源放入project / androidTest / assets / test_file中,并使用getContext()getResources().getAssets().open(“test_file”); (在AndroidTestCase中).
但是,这给我一个FileNotFoundException.如何解决这个问题?
解决方法
看起来你正在尝试创建一个测试单元测试,因为你想在androidTest文件夹中创建它.
您可以在测试中使用这两行之一来获取上下文:
> Context ctx = InstrumentationRegistry.getTargetContext();
这个将给你你的应用程序的上下文.您可以使用它来获取例如src / main / assets中的资产.
> Context ctx = InstrumentationRegistry.getContext();
这个将给你测试应用程序的上下文.您可以使用它来获取src / androidTest / assets中的资产
如果您想更多地了解单元测试中的资产,您可以阅读this的帖子.在this github file你有一个例子.