Developer Device Platform 术语表

Developer Device Platform (DDP) 是 Google Cloud的商业级云优先平台,用于远程移动设备编排、自动化批量测试和智能体开发工作流。DDP 将受管设备农场基础设施直接集成到 Google Cloud 生态系统中。本词汇表按字母顺序提供了 DDP 的关键概念、架构组件、API 接口、CLI 命令和操作范式的技术参考。

如需了解 Developer Device Platform 及相关技术的基本术语,请参阅本页面上的列表。以下是关键术语定义的其他来源:


A

智能体技能(DDP 智能体技能和迁移技能)

DDP 智能体技能

在 Google Cloud GitHub 上的/skills/cloud/developer-device-platform-basics技能 下发布的开源特定于任务的指令 集。 DDP 智能体技能专为 Antigravity、ChatGPT 和 Claude Code 等 AI 编码助理而设计,使智能体能够通过 Device Streaming API 以编程方式租用远程设备、初始化 ADB 转发守护程序、执行 shell 命令、捕获帧缓冲区屏幕截图,以及使用 gcloud device-run CLI 触发自动化测试套件。

迁移技能

从 Firebase Test Lab 迁移到 Developer Device Platform 的技能,其中详细介绍了标志映射和其他差异,并包含专门针对 AI 智能体的纯文本版本。

Android Test Orchestrator

借助 Android Test Orchestrator,您可以在应用自己的插桩调用中运行应用的每项测试。如需了解详情,请参阅使用 Android Test Orchestrator。

APK 集 (.apks)

由 bundletool 为 Android App Bundle (AAB) 生成的软件包存档格式。DDP 原生支持安装 .apks 文件。

AutomationSession Service (DeviceRun API)

DDP 的核心批处理执行引擎,托管在 devicerun.googleapis.com 下。AutomationSession 服务通过一个统一的 API 调用接受应用二进制文件和硬件条件。后端会将设备分配、环境预配、测试驱动程序执行、日志收集和拆解作为原子操作进行处理。


C

Cloud Storage 模型(用户拥有的存储桶)

DDP 的存储架构,其中所有测试输入工件 (APK) 和输出结果都托管在开发者Google Cloud 项目(例如 gs://<project_id>_devicerun)拥有的存储桶中。


D

Developer Device Platform (DDP)

Google Cloud的企业级平台,用于远程设备测试和智能体移动开发,托管在 Google Cloud上。DDP 提供与 Google Cloud 控制台、IAM、Cloud Billing 和 SDK 原生集成的受管设备农场基础架构。

Device Catalog API

一个统一且符合 AIP 规范的设备发现界面,托管在 devicerun.googleapis.com 下,适用于项目和位置。设备目录提供了一个涵盖实体和虚拟 Android 及 iOS 设备的单一平面集合。每个条目都会公开一个稳定的不透明设备 ID、硬件规格以及实时机群容量和可用性信号。

目录属性 数据类型 说明
name 字符串 资源路径 (projects/my-project/locations/global/devices/device-id)。
form 枚举 硬件类型(PHYSICAL 或 VIRTUAL)。
os_version 字符串 操作系统版本或 Android SDK 级别(例如 35 或 17.4)。
availability 消息 车队容量信号(HIGH、MEDIUM、LOW、NONE)。

Device Run API

devicerun.googleapis.com 伞,它将远程设备测试、目录发现和代理工作流整合到云原生服务中,如 Device Run 概览中所述。

Device Streaming API

内置 Google Cloud 产品 devicestreaming.googleapis.com 提供交互式远程设备串流功能。借助 Device Streaming API,开发者可以将实时设备显示内容直接流式传输到 Android Studio。


E

执行

Developer Device Platform Device Run 的三层资源层次结构(Session -> Job -> Execution)中的最低层。执行表示系统生成的具体运行时尝试,旨在在分配的设备上运行测试套件或分片,并捕获原始输出日志、系统日志和视频录制内容。


F

侧翼

一款热门的第三方开源客户端测试运行程序,旨在优化测试作业和分片。DDP 原生吸收了 Flank 的核心功能,包括基于 YAML 的配置、高级历史智能分片和有针对性的重试,因此无需外部封装容器。


G

gcloud device-run

用于 DDP 批量测试和流式传输操作的主要 Google Cloud SDK 命令行界面。它采用以资源为中心的 gcloud device-run <resource> <verb> 模式,提供用于提交测试会话、查询设备可用性、轮询执行状态和下载结果的命令。


J

作业

Developer Device Platform Device Run 的三层资源层次结构(Session -> Job -> Execution)中的中间层。作业会将特定的自动化配置(JobAction,例如 Android 插桩测试)与目标设备配置配对。启用分片或重试后,单个作业会自动扩展为多个执行。


否

NO_ACCESS_BLOCKED_BY_ORG_ADMIN

DDP 设备目录中返回的访问状态标记,表示特定设备型号或合作伙伴实验室(例如第三方 OEM 硬件)已被 Organization Administrator 使用 Google Cloud 资源管理器标记或组织政策限制。


O

One Platform API 依赖项组

一项 Google Cloud 服务控制平面功能,可自动触发依赖 API 的后端激活。当开发者启用 DDP API 时,依赖项组会在后台自动激活。


P

Partner Device Labs

由 Google OEM 合作伙伴(例如三星、小米、OPPO、一加、vivo、传音)直接运营并集成到 DDP 中的远程设备实验室。合作伙伴实验室扩大了设备目录的多样性,并且需要在Google Cloud 控制台中进行明确的项目级启用。


S

依序重试不可靠的测试

DDP 中的一种节省成本的重试机制,可隔离并仅重试分片中失败的单个测试用例,默认情况下会按顺序运行这些用例,而不是同时重新运行整个分片。

服务代理(服务账号)

在 Google Cloud 项目中启用 DDP API 时自动创建的 Google 管理的 Google Cloud 服务账号。DDP 服务代理拥有 IAM 服务权限,可以安全地从用户拥有的 Google Cloud Storage 存储桶中读取输入测试二进制文件,并将测试输出日志和视频写入其中,将状态通知发布到 Google Cloud Pub/Sub 主题,并代表项目在托管数据中心内编排硬件分配。

Service Usage/API 启用

Google Cloud 服务管理子系统,负责为项目启用和配置 Google Cloud API。启用 DDP 需要项目级权限或 devicerun.googleapis.com、devicestreaming.googleapis.com 和 testing.googleapis.com 服务角色。

会话

Developer Device Platform Device Run 资源层次结构 (projects/my-project/locations/global/sessions/session-id) 中的顶级容器。一个会话封装了用户的批量提交,其中包含在设备矩阵或 Gradle 模块中执行的一个或多个作业,并生成一个汇总的 SessionReport。

在 Developer Device Platform Device Streaming API 中,deviceSession 表示单个远程设备流式传输会话。Device Streaming API 不会运行批处理脚本直至完成,而是预留单个设备并打开实时双向连接,以便工程师或 AI 智能体实时查看屏幕并控制设备。

智能分片

Developer Device Platform Device Run (--sharding-option=smart) 中的一种智能测试分区机制。智能分片会分析最多 30 天的历史测试作业数据,跟踪特定设备型号的运行时,并考虑 Android Test Orchestrator 启动开销,将测试套件分配到平衡的分片中,以实现指定的时长。


U

统一分片

Developer Device Platform Device Run 中的一种测试分发策略 (--sharding-option=uniform --uniform-sharding-count=N),该策略使用 AndroidJUnitRunner 的原生 -e numShards 和 -e shardIndex 参数,将 Android 插桩测试套件划分到固定数量的分片 ($N$) 中。