- 资源:测试环境目录
- Android设备目录
- Android模型
- 设备表单
- 设备外形尺寸
- 每个Android版本信息
- 设备容量
- Android版本
- 日期
- 分配
- Android运行时配置
- 语言环境
- 方向
- Ios设备目录
- IOS模型
- PerIos版本信息
- Ios版本
- Xcode版本
- Ios运行时配置
- 网络配置目录
- 网络配置
- 交通规则
- 提供的软件目录
- 设备Ip块目录
- 设备IP块
- 方法
资源:测试环境目录
测试环境的描述。
JSON 表示 |
---|
{ // Union field |
领域 | |
---|---|
联合字段environment_catalog 。仅输出。 environment_catalog 只能是以下之一: | |
androidDeviceCatalog | 支持的 Android 设备。 |
iosDeviceCatalog | 支持的 iOS 设备。 |
networkConfigurationCatalog | 支持的网络配置。 |
softwareCatalog | TestExecutionService提供的软件测试环境。 |
deviceIpBlockCatalog | 测试环境中设备使用的 IP 块。 |
Android设备目录
目前支持的Android设备。
JSON 表示 |
---|
{ "models": [ { object ( |
领域 | |
---|---|
models[] | 支持的 Android 设备型号集。 |
versions[] | 支持的 Android 操作系统版本集。 |
runtimeConfiguration | 支持的运行时配置集。 |
Android模型
可以运行测试的 Android 设备的描述。
JSON 表示 |
---|
{ "id": string, "name": string, "manufacturer": string, "brand": string, "codename": string, "form": enum ( |
领域 | |
---|---|
id | 该模型的唯一不透明 ID。使用它来调用 TestExecutionService。 |
name | 该设备型号的人类可读的营销名称。示例:“Nexus 5”、“Galaxy S5”。 |
manufacturer | 该设备的制造商。 |
brand | 该设备的品牌公司。示例:“谷歌”、“三星”。 |
codename | 工业品外观设计的名称。这对应于 android.os.Build.DEVICE。 |
form | 该设备是虚拟的还是物理的。 |
formFactor | 该设备是否是手机、平板电脑、可穿戴设备等。 |
perVersionInfo[] | Android 型号的版本特定信息。 |
screenX | 水平 (X) 维度的屏幕尺寸(以像素为单位)。 |
screenY | 垂直 (Y) 维度的屏幕尺寸(以像素为单位)。 |
screenDensity | 屏幕密度(DPI)。这对应于 ro.sf.lcd_密度 |
lowFpsVideoRecording | 当且仅当通过将屏幕截图拼接在一起来记录此模型的测试时,才为真。请参阅设备配置中的 use_low_spec_video_recording。 |
supportedVersionIds[] | 该设备支持的 Android 版本集。 |
supportedAbis[] | 该设备支持的 ABI 列表。这对应于 android.os.Build.SUPPORTED_ABIS(对于 API 级别 21 及以上)或 android.os.Build.CPU_ABI/CPU_ABI2。最优选的 ABI 是列表中的第一个元素。 元素可以选择添加“versionId:”前缀(其中 versionId 是 AndroidVersion 的 id),表示仅在特定版本上支持的 ABI。 |
tags[] | 该维度的标签。示例:“默认”、“预览”、“已弃用”。 |
thumbnailUrl | 设备缩略图(照片)的 URL。 |
设备表单
该设备是物理的还是虚拟的。
枚举 | |
---|---|
DEVICE_FORM_UNSPECIFIED | 不使用。仅适用于原型版本控制。 |
VIRTUAL | 使用 Compute Engine 本机虚拟化的 Android 虚拟设备。仅限 Firebase 测试实验室。 |
PHYSICAL | 实际硬件。 |
EMULATOR | Android 虚拟设备在嵌套虚拟化中使用模拟器。相当于Android Studio。 |
设备外形尺寸
设备的外形尺寸。
枚举 | |
---|---|
DEVICE_FORM_FACTOR_UNSPECIFIED | 不使用。仅适用于原型版本控制。 |
PHONE | 该设备具有电话的形状。 |
TABLET | 该设备具有平板电脑的形状。 |
WEARABLE | 该设备具有手表或其他可穿戴设备的形状。 |
每个Android版本信息
Android 型号的版本特定信息。
JSON 表示 |
---|
{
"versionId": string,
"deviceCapacity": enum ( |
领域 | |
---|---|
versionId | 安卓版本。 |
deviceCapacity | Android版本的在线设备数。 |
设备容量
容量基于实验室中在线设备的数量。
重要提示:设备容量并不直接反映某一时刻队列的长度。它不考虑当前流量或设备状态。
对于物理设备,该数量是最近 30 天内在线设备的平均值。
枚举 | |
---|---|
DEVICE_CAPACITY_UNSPECIFIED | 设备容量的值未知或未设置。 |
DEVICE_CAPACITY_HIGH | 高容量设备(实验室有大量此类设备)。 通常建议使用这些设备来运行大量同时测试(例如超过 100 个测试)。 请注意,由于以下几个因素,高容量设备不能保证较短的等待时间: 1. 流量(在任何给定时刻的使用量) 2. 高容量设备优先用于某些用途,这可能会导致用户测试速度变慢比选择其他类似的设备类型。 |
DEVICE_CAPACITY_MEDIUM | 中等容量的设备(实验室拥有相当数量的此类设备,但数量不如高容量设备)。 这些设备适用于较少的测试运行(例如少于 100 次测试)并且仅适用于低分片数量(例如少于 10 个分片)。 |
DEVICE_CAPACITY_LOW | 容量较低的设备(实验室拥有少量此类设备)。 如果用户需要在该特定设备型号和版本上进行测试,则可以使用这些设备。请注意,由于容量较低,测试可能需要更长的时间才能完成,特别是在一次调用大量测试的情况下。这些设备不适合测试分片。 |
DEVICE_CAPACITY_NONE | 实验室中完全缺失的设备。 这些设备暂时或永久不可用,因此不应请求。如果设备也被标记为已弃用,则此状态很可能是永久性的。 |
Android版本
Android 操作系统的一个版本。
JSON 表示 |
---|
{ "id": string, "versionString": string, "apiLevel": integer, "codeName": string, "releaseDate": { object ( |
领域 | |
---|---|
id | 此 Android 版本的不透明 ID。使用此 id 调用 TestExecutionService。 |
versionString | 表示此 Android 操作系统版本的字符串。示例:“4.3”、“4.4”。 |
apiLevel | 此 Android 版本的 API 级别。示例:18、19。 |
codeName | 此 Android 版本的代号。示例:“JellyBean”、“KitKat”。 |
releaseDate | 此 Android 版本上市的日期。 |
distribution | 该版本的市场份额。 |
tags[] | 该维度的标签。示例:“默认”、“预览”、“已弃用”。 |
日期
表示整个或部分日历日期,例如生日。一天中的时间和时区要么在其他地方指定,要么无关紧要。该日期是相对于公历的。这可以代表以下之一:
- 完整日期,具有非零年、月和日值。
- 一个月和一天,年份为零(例如周年纪念日)。
- 一年本身,有零个月和零日。
- 年和月,带有零日(例如,信用卡到期日期)。
相关类型:
-
google.type.TimeOfDay
-
google.type.DateTime
-
google.protobuf.Timestamp
JSON 表示 |
---|
{ "year": integer, "month": integer, "day": integer } |
领域 | |
---|---|
year | 日期年份。必须介于 1 到 9999 之间,或使用 0 来指定不带年份的日期。 |
month | 一年中的一个月。必须介于 1 到 12 之间,或者使用 0 来指定没有月份和日期的年份。 |
day | 一个月中的一天。必须介于 1 到 31 之间,并且对年份和月份有效,或者使用 0 来单独指定年份,或者指定年份和月份(其中日期不重要)。 |
分配
有关运行给定 Android 平台配置的设备相对数量的数据。
JSON 表示 |
---|
{ "measurementTime": string, "marketShare": number } |
领域 | |
---|---|
measurementTime | 仅输出。测量该分布的时间。 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
marketShare | 仅输出。具有此配置的总市场的估计比例 (0-1)。 |
Android运行时配置
可以在运行测试时选择的 Android 配置。
JSON 表示 |
---|
{ "locales": [ { object ( |
领域 | |
---|---|
locales[] | 可用区域设置的集合。 |
orientations[] | 可用方向的集合。 |
语言环境
语言的位置/区域指定。
JSON 表示 |
---|
{ "id": string, "name": string, "region": string, "tags": [ string ] } |
领域 | |
---|---|
id | 该区域设置的 ID。示例:“en_US”。 |
name | 该语言/区域设置的人类友好名称。例如:“英语”。 |
region | 代表该语言环境的区域的人类友好字符串。例如:“美国”。并非每个区域都存在。 |
tags[] | 该维度的标签。示例:“默认”。 |
方向
设备的屏幕方向。
JSON 表示 |
---|
{ "id": string, "name": string, "tags": [ string ] } |
领域 | |
---|---|
id | 该方向的 ID。例如:“肖像”。 |
name | 此方向的一个人类友好的名称。例如:“肖像”。 |
tags[] | 该维度的标签。示例:“默认”。 |
Ios设备目录
目前支持的 iOS 设备。
JSON 表示 |
---|
{ "models": [ { object ( |
领域 | |
---|---|
models[] | 支持的 iOS 设备型号集。 |
versions[] | 支持的 iOS 软件版本集。 |
xcodeVersions[] | 支持的 Xcode 版本集。 |
runtimeConfiguration | 支持的运行时配置集。 |
IOS模型
可以运行测试的 iOS 设备的描述。
JSON 表示 |
---|
{ "id": string, "name": string, "supportedVersionIds": [ string ], "tags": [ string ], "deviceCapabilities": [ string ], "screenX": integer, "screenY": integer, "screenDensity": integer, "formFactor": enum ( |
领域 | |
---|---|
id | 该模型的唯一不透明 ID。使用它来调用 TestExecutionService。 |
name | 该设备型号的人类可读名称。示例:“iPhone 4s”、“iPad Mini 2”。 |
supportedVersionIds[] | 该设备支持的 iOS 主要软件版本集。 |
tags[] | 该维度的标签。示例:“默认”、“预览”、“已弃用”。 |
deviceCapabilities[] | |
screenX | 水平 (X) 维度的屏幕尺寸(以像素为单位)。 |
screenY | 垂直 (Y) 维度的屏幕尺寸(以像素为单位)。 |
screenDensity | 屏幕密度(DPI)。 |
formFactor | 该设备是否是手机、平板电脑、可穿戴设备等。 |
perVersionInfo[] | iOS 模型的版本特定信息。 |
PerIos版本信息
iOS 型号的版本特定信息。
JSON 表示 |
---|
{
"versionId": string,
"deviceCapacity": enum ( |
领域 | |
---|---|
versionId | iOS 版本。 |
deviceCapacity | iOS版本的在线设备数。 |
Ios版本
iOS 版本。
JSON 表示 |
---|
{ "id": string, "majorVersion": integer, "minorVersion": integer, "tags": [ string ], "supportedXcodeVersionIds": [ string ] } |
领域 | |
---|---|
id | 此 iOS 版本的不透明 ID。使用此 id 调用 TestExecutionService。 |
majorVersion | 代表主要 iOS 版本的整数。示例:“8”、“9”。 |
minorVersion | 表示 iOS 次要版本的整数。示例:“1”、“2”。 |
tags[] | 该维度的标签。示例:“默认”、“预览”、“已弃用”。 |
supportedXcodeVersionIds[] | 此版本的可用 Xcode 版本。 |
Xcode版本
iOS 版本兼容的 Xcode 版本。
JSON 表示 |
---|
{ "version": string, "tags": [ string ] } |
领域 | |
---|---|
version | 该版本的 id。示例:“9.2”。 |
tags[] | 此 Xcode 版本的标签。示例:“默认”。 |
Ios运行时配置
可以在运行测试时选择的 iOS 配置。
JSON 表示 |
---|
{ "locales": [ { object ( |
领域 | |
---|---|
locales[] | 可用区域设置的集合。 |
orientations[] | 可用方向的集合。 |
网络配置目录
JSON 表示 |
---|
{
"configurations": [
{
object ( |
领域 | |
---|---|
configurations[] | |
网络配置
JSON 表示 |
---|
{ "id": string, "upRule": { object ( |
领域 | |
---|---|
id | 此网络流量配置的唯一不透明 ID。 |
upRule | 适用于上传流量的模拟规则。 |
downRule | 适用于下载流量的模拟规则。 |
交通规则
网络仿真参数。
JSON 表示 |
---|
{ "delay": string, "packetLossRatio": number, "packetDuplicationRatio": number, "bandwidth": number, "burst": number } |
领域 | |
---|---|
delay | 数据包延迟,必须 >= 0。 以秒为单位的持续时间,最多包含九个小数位,以“ |
packetLossRatio | 丢包率(0.0 - 1.0)。 |
packetDuplicationRatio | 数据包重复率(0.0 - 1.0)。 |
bandwidth | 带宽(以千比特/秒为单位)。 |
burst | 突发大小(以 kbit 为单位)。 |
提供的软件目录
当前在被测设备上提供的软件环境。
JSON 表示 |
---|
{ "orchestratorVersion": string, "androidxOrchestratorVersion": string } |
领域 | |
---|---|
orchestratorVersion | 已弃用:今后使用 AndroidX Test Orchestrator。 表示环境中使用的 Android Test Orchestrator 当前版本的字符串。该软件包可从https://maven.google.com/web/index.html#com.android.support.test:orchestrator获取。 |
androidxOrchestratorVersion | 表示环境中使用的 AndroidX Test Orchestrator 当前版本的字符串。该软件包可从https://maven.google.com/web/index.html#androidx.test:orchestrator获取。 |
设备Ip块目录
Firebase 测试实验室使用的 IP 块列表
JSON 表示 |
---|
{
"ipBlocks": [
{
object ( |
领域 | |
---|---|
ipBlocks[] | Firebase 测试实验室使用的设备 IP 块 |
设备IP块
单个设备IP块
JSON 表示 |
---|
{ "block": string, "form": enum ( |
领域 | |
---|---|
block | 采用 CIDR 表示法的 IP 地址块,例如:34.68.194.64/29 |
form | 该块是否被物理设备或虚拟设备使用 |
addedDate | 此块添加到 Firebase 测试实验室的日期 |
方法 | |
---|---|
| 获取支持的测试环境的目录。 |