當我添加一個packageNameSuffix我的build.gradle調試版本類型(見https://plus.google.com/108967384991768947849/posts/XGXH3arvbrK),我所有的Robolectric測試以下失敗的原因:PackageNameSuffix打破測試 - Robolectric
Caused by: android.content.res.Resources$NotFoundException: Unable to find resource ID #0x7f050000
at org.robolectric.shadows.ShadowResources.getResName(ShadowResources.java:354)
at org.robolectric.shadows.ShadowResources.openRawResource(ShadowResources.java:387)
at android.content.res.Resources.openRawResource(Resources.java)
at com.myapp.utilities.CSVUtility.parseRawResourceCSV(CSVUtility.java:38)
的問題似乎是原始文件夾src/main/res/main
不再被發現。該文件夾包含在應用程序啓動時解析的csv ...這是測試進行的地方boom。
拋開架構/數據重構建議(我知道CSV可能不是在應用程序啓動時加載此數據的最佳方式),有誰知道我可以如何解決此問題?
編輯:我試着將文件移動到資產文件夾,然後我的測試失敗的Context.getString()調用。在添加packageNameSuffixes時,資源看起來會變得完全混亂。