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

运行Kaspresso官方示例失败:connectedDebugAndroidTest任务执行出错

Kaspresso示例测试任务失败的原因、解决方法及前置检查

一、常见失败原因及对应解决办法

  • 设备/模拟器连接异常
    connectedDebugAndroidTest任务依赖已连接的真实设备或运行中的模拟器,设备未识别、模拟器未启动都会直接导致任务失败。
    解决:

    • 执行adb devices命令确认设备/模拟器已被ADB识别;
    • 真实设备需开启USB调试,Android 8.0+设备额外开启“允许USB安装应用”权限;
    • 重启ADB服务:依次执行adb kill-server和adb start-server。
  • Android SDK环境不匹配
    Kaspresso示例依赖特定版本的Compile SDK、Build Tools或Target SDK,本地缺少对应版本会触发编译失败。
    解决:

    • 打开Android Studio的SDK Manager,安装项目build.gradle中指定的SDK组件;
    • 确保设备/模拟器的系统版本不低于项目的Min SDK版本。
  • Gradle依赖缓存损坏或下载不完整
    依赖下载中断、缓存损坏会导致构建过程中找不到所需类或资源。
    解决:

    • 执行./gradlew clean清理项目,再重新执行测试任务;
    • 删除用户目录下的.gradle/caches文件夹,清除Gradle缓存后重新同步项目;
    • 检查网络连通性,确保能正常访问Maven仓库获取依赖。
  • 测试代码或配置存在错误
    任务失败的具体原因可能隐藏在日志中,仅靠任务失败提示无法定位。
    解决:

    • 执行./gradlew connectedDebugAndroidTest --stacktrace获取详细错误栈,根据日志信息排查(比如权限拒绝、测试代码崩溃、资源缺失等);
    • 检查AndroidManifest.xml是否声明了测试所需的权限(如存储、位置权限)。
  • Kaspresso与Gradle/AGP版本不兼容
    不同版本的Kaspresso对Gradle和Android Gradle Plugin(AGP)有版本要求,版本不匹配会引发构建冲突。
    解决:

    • 查看Kaspresso官方文档,确认当前示例对应的Gradle和AGP版本,同步调整本地环境;
    • 检查项目根目录gradle/wrapper/gradle-wrapper.properties中的Gradle版本是否符合要求。

二、容易遗漏的前置配置与条件

  • 开启设备调试权限
    真实设备必须开启USB调试,Android 8.0+设备需额外允许“通过USB安装应用”,否则测试APK无法安装。
  • 配置正确的测试运行器
    确保项目模块的build.gradle中配置了Kaspresso指定的测试运行器:
    defaultConfig {
        testInstrumentationRunner "com.kaspersky.kaspresso.testcases.api.testrunner.KaspressoRunner"
    }
    
  • 保障设备资源充足
    UI测试需要足够的内存和CPU支持,模拟器建议分配至少2GB内存,避免因资源不足导致测试崩溃。
  • 完成项目依赖同步
    克隆仓库后,先执行Android Studio的“Sync Project with Gradle Files”操作,确保所有依赖下载完成再运行测试。
  • 关闭Instant Run功能
    Android Studio的Instant Run可能干扰测试任务执行,建议在Settings > Build, Execution, Deployment > Instant Run中关闭该功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 18:13:20