我的应用使用其versionName
PackageInfo
来确定当前版本。
我尝试测试一段代码(使用JUnit
)依赖于该数据,但Robolectric将versionName
设置为null。
我查看了源代码,发现PackageInfo
是根据我的AndroidManifest.xml
进行初始化的。
我的应用程序的清单不包含versionName,它是通过android gradle插件设置的(在常规构建后效果很好,我希望保持这种方式)
android {
compileSdkVersion 19
buildToolsVersion "19.1.0"
defaultConfig {
...
versionName VERSION_NAME
}
...
}
我是否可以在测试版本中对清单进行更改?
答案 0 :(得分:1)
您可以使用BuildConfig.VERSION_NAME
常量而不是从PackageInfo
收集它。
但是,由于Robolectric
测试仅针对调试配置运行,因此无法检入Robolectric
测试版本配置案例。但也许不是你的情况