使用robolectric时如何访问测试类中的资源

dew*_*s92 5 android robolectric

我已经制作了一个值的文本文件,我想在res / raw
中使用这些值进行测试,我想在测试中使用它们,
我正在使用robolectric
。访问这些值的最佳方法是什么?
谢谢

Tom*_*Tom 7

您可以通过应用程序实例访问应用程序的资源。使用 ApplicationProvider 从单元测试中获取它:

// replace 'Application' with your actual class if you use a custom one
ApplicationProvider.getApplicationContext<Application>().resources
Run Code Online (Sandbox Code Playgroud)

确保 includeAndroidResources 在您的中设置为 true ,build.gradle否则您的单元测试将看不到您的资源:

android {
    testOptions.unitTests.includeAndroidResources true
}
Run Code Online (Sandbox Code Playgroud)


dew*_*s92 0

wooops,在发布问题之前我真的应该做更多研究
robolectric 已获得资源支持https://github.com/robolectric/robolectric