技术问询:AndroidTest是否支持Flavors与Build Type变体?仅含src/androidTest/java时测试哪个变体?
嘿,我来帮你把这个问题理得明明白白:
AndroidTest 是否支持 Flavors 与 Build Type Variants?
当然支持!Android Gradle 插件完全适配了 Flavors 和 Build Type 的变体测试需求。你只需要按照对应的目录规则来组织测试代码就行:
- 想给
debug构建类型单独写测试?创建src/androidTestDebug/java目录,这里的测试只会在构建 debug 变体时执行 - 针对特定 Flavor(比如
free版本)的测试,就建src/androidTestFree/java目录 - 甚至可以组合两者,比如
src/androidTestFreeDebug/java,这个目录下的测试就只属于freeDebug这个组合变体
Gradle 会自动根据你当前构建的变体,把对应变体目录的测试代码和通用的 androidTest 目录代码合并,然后一起运行。
当仅存在 src/androidTest/java 目录时,应当测试哪个变体?
这个目录是所有变体共享的通用测试目录——里面的测试代码会被每一个构建变体复用。
举个例子:如果你有 free/paid 两个 Flavors,加上 debug/release 两种构建类型,一共会生成4个变体(freeDebug、freeRelease、paidDebug、paidRelease)。不管你构建其中哪一个变体,src/androidTest/java 里的测试都会被包含进去执行。也就是说,你不需要特意指定某个变体,只要构建任意变体,这个目录的测试都会跑起来。
内容的提问来源于stack exchange,提问作者eastwater
相关产品推荐
相关产品推荐

