Robolectric 3.0 - 使用applicationIdSuffix时未解析资源

Phi*_* E. 3 android unit-testing robolectric

我已成功使用此代码在应用程序和Robolectric 2.4的单元测试中加载资源:

getContext().getResources().getIdentifier(resName, "string", getContext().getPackageName());
Run Code Online (Sandbox Code Playgroud)

其中Context是App中的MyApplication和Robolectric测试中的TestMyApplication.

使用Robolectric 3.0,当将applicationIdSuffix添加到构建文件时,该调用将不再有效,该调用返回0.

这是一个已知的问题?这是在com.android.tools.build:gradle:1.2.0-beta1和org.robolectric:robolectric:3.0-rc2

更新 https://github.com/robolectric/robolectric/issues/1623

Phi*_* E. 6

实际上现在有一个简单的解决方法,只需添加 @Config(constants = BuildConfig.class, packageName = com.your.package)

请参阅https://github.com/robolectric/robolectric-samples/tree/master/android-flavors