Robolectric packageinfo 缺失数据
Robolectric packageinfo missing data
我的应用使用 PackageInfo
中的 versionName
来确定当前版本。
我正在尝试测试依赖于该数据的一段代码(使用 JUnit
),但是 Robolectric 将 versionName
设置为空。
我查看了源代码,发现 PackageInfo
是根据我的 AndroidManifest.xml
.
初始化的
我的应用程序的清单不包含版本名称,它是通过 android gradle 插件设置的(在常规构建后效果很好,我想保持这种状态)
android {
compileSdkVersion 19
buildToolsVersion "19.1.0"
defaultConfig {
...
versionName VERSION_NAME
}
...
}
关于如何在测试版本中对清单进行更改的任何想法?
您可以使用 BuildConfig.VERSION_NAME
常量,而不是从 PackageInfo
收集常量。
然而,由于 Robolectric
测试 运行 仅用于调试配置,因此无法签入 Robolectric
测试发布配置案例。但也许不是你的情况
我的应用使用 PackageInfo
中的 versionName
来确定当前版本。
我正在尝试测试依赖于该数据的一段代码(使用 JUnit
),但是 Robolectric 将 versionName
设置为空。
我查看了源代码,发现 PackageInfo
是根据我的 AndroidManifest.xml
.
我的应用程序的清单不包含版本名称,它是通过 android gradle 插件设置的(在常规构建后效果很好,我想保持这种状态)
android {
compileSdkVersion 19
buildToolsVersion "19.1.0"
defaultConfig {
...
versionName VERSION_NAME
}
...
}
关于如何在测试版本中对清单进行更改的任何想法?
您可以使用 BuildConfig.VERSION_NAME
常量,而不是从 PackageInfo
收集常量。
然而,由于 Robolectric
测试 运行 仅用于调试配置,因此无法签入 Robolectric
测试发布配置案例。但也许不是你的情况