You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Android Gradle Plugin仅运行插桩测试并生成报告,跳过构建与安装?

仅通过Android Gradle Plugin运行插桩测试并生成报告(跳过构建与安装)

可以通过Gradle的任务排除机制,直接跳过APK构建和安装步骤,仅执行插桩测试并生成标准HTML报告,具体方法如下:

一、快速命令行执行(单次使用)

直接通过-x参数排除构建、安装相关的前置任务,运行connectedAndroidTest核心逻辑:

./gradlew connectedAndroidTest -x assembleDebug -x assembleDebugAndroidTest -x installDebug -x installDebugAndroidTest

参数说明:

  • -x:用于排除指定任务,这里跳过了构建APK的assembleDebug、assembleDebugAndroidTest,以及安装APK的installDebug、installDebugAndroidTest
  • 执行后,Gradle会直接连接已预装APK的设备,运行插桩测试,并生成和./gradlew cAT完全一致的HTML报告,默认路径在app/build/reports/androidTests/connected/

二、自定义Gradle任务(CI流水线复用)

如果需要在CI中频繁执行,可在模块的build.gradle(或build.gradle.kts)中定义自定义任务,简化命令:

Groovy DSL(build.gradle)

task runInstrumentedTestsSkipBuild(type: Exec) {
    dependsOn 'connectedAndroidTest'
    doFirst {
        gradle.startParameter.excludedTaskNames.addAll(['assembleDebug', 'assembleDebugAndroidTest', 'installDebug', 'installDebugAndroidTest'])
    }
}

Kotlin DSL(build.gradle.kts)

tasks.register("runInstrumentedTestsSkipBuild") {
    dependsOn(tasks.connectedAndroidTest)
    doFirst {
        gradle.startParameter.excludedTaskNames.addAll(listOf("assembleDebug", "assembleDebugAndroidTest", "installDebug", "installDebugAndroidTest"))
    }
}

之后只需执行自定义任务即可:

./gradlew runInstrumentedTestsSkipBuild

注意事项

  • 必须确保设备上预装的app-debug.apk和app-debug-androidTest.apk,与当前代码的测试逻辑完全匹配,否则会出现测试结果异常
  • 如果设备未正确安装目标APK,Gradle会直接报错,需手动检查安装状态

内容的提问来源于stack exchange,提问作者Undefined function

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 17:42:35