如何在 Android 项目中配置 build.gradle
以在每次调试或发布构建之前运行我的所有单元测试?我知道我可以使用 dependsOn
设置任务依赖关系,但我如何为单元测试任务指定它?我想为我项目的每个(Android 和纯 Java)模块执行此操作,这可能吗?
最佳答案
您是否有一项特殊任务需要仅运行单元测试?或者您可以将其作为简单的 test
(或更一般的 testDebug
和 testRelease
)自由运行?假设您希望在每次调用 assembleDebug
或 assembleRelease
任务时运行 testDebug
或 testRelease
。然后,正如您所注意到的,您可以使用 dependsOn
任务属性。例如这样:
assembleDebug.dependsOn testDebug
assembleRelease.dependsOn testRelease
此配置必须添加到每个 build.gradle 脚本(在项目的每个模块中),您需要的地方。如果你有很多测试任务,你可以这样设置任务依赖:
tasks.assembleRelease.dependsOn {
project.tasks.findAll { task ->
task.name.startsWith('testRelease')
}
}
当然,您可以尝试使用 allprojects
或 subprojects
在根目录 build.gradle 脚本中设置此依赖项(您可以阅读 here ), 但你也必须在根脚本中应用 android
插件,否则将找不到任务。
关于android - 在 Gradle 中的每个构建之前运行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35255638/