【发布时间】:2016-07-17 16:31:50
【问题描述】:
我正在使用 PowerMockRunner 运行我的单元测试。我想从我的资产文件夹中加载一些预设的网络响应 json 文件。
我正在使用这种方法来尝试获取文件。
private static File getFileFromPath(Object obj, String fileName) {
ClassLoader classLoader = obj.getClass().getClassLoader();
URL resource = classLoader.getResource(fileName);
return new File(resource.getPath());
}
我从顶部有这些注释的类中调用这样的方法。
@RunWith(PowerMockRunner.class)
@PrepareForTest(Network.class)
File file = getFileFromPath(this, "mock_response.json");
但是,当我评估这个表达式时。
classLoader.getResource(".");
运行此测试时,它表明我当前位于以下目录中。
/Users/tylerpfaff/Library/Android/sdk/platforms/android-23/data/res/
看到我在平台资源目录中,我没有希望从项目的资源目录中成功加载资源。我需要做什么才能访问我的项目的资源目录?
【问题讨论】:
标签: android json unit-testing mockito powermock