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

Android Studio中Instrumented Test启动缓慢的原因及优化方法咨询

问题分析与解决方案

耗时原因

你遇到的25秒耗时并非来自构建环节,而是集中在connectedDebugAndroidTest任务的设备执行准备阶段,具体包括:

  • 验证设备连接状态,确认设备可用
  • 校验测试APK的安装状态(即便代码无修改,Gradle可能会重新验证APK签名或完整性,触发隐性的安装校验流程)
  • 启动设备上的Android Test Runner服务,初始化JUnit测试框架环境
  • 等待设备系统调度资源,完成测试进程的启动与初始化

从日志能明显看出,前序构建任务均为UP-TO-DATE状态,几乎瞬间完成,所有耗时都在测试的设备准备环节。

缩短耗时的方法

1. 跳过测试APK重复安装

如果测试APK已安装且无修改,可通过Gradle命令添加参数跳过安装:

./gradlew connectedDebugAndroidTest --no-install

或在Android Studio的测试运行配置中,将「Reinstall app」选项设置为「Do not reinstall app」。

2. 优化设备/模拟器性能

  • 使用x86_64架构的系统镜像,并开启硬件加速(模拟器设置中启用「Hardware - GLES 2.0」和「Virtualization Technology」)
  • 关闭设备/模拟器后台无关应用、通知,减少资源占用
  • 真机测试时,开启开发者模式并关闭系统动画(设置→开发者选项→关闭「窗口动画缩放」「过渡动画缩放」「动画程序时长缩放」)

3. 调整Gradle测试配置

在模块build.gradle中添加配置,减少测试冗余操作:

android {
    testOptions {
        animationsDisabled true // 禁用测试动画,加快执行速度
        execution 'ANDROIDX_TEST_ORCHESTRATOR'
    }
}

同时在gradle.properties中开启Gradle缓存与并行构建,确保测试任务命中缓存:

org.gradle.caching=true
org.gradle.parallel=true

4. 启用快速测试模式

在Android Studio中打开「Run」→「Edit Configurations」,找到对应测试配置,勾选「Use fast mode」,跳过非必要的验证步骤。

5. 保持测试服务活跃

频繁运行测试时,不要手动关闭设备上的测试进程,让测试服务保持活跃状态,避免重复初始化的耗时。


内容的提问来源于stack exchange,提问作者Laurent D.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 23:53:22