REST Resource: testEnvironmentCatalog

リソース: TestEnvironmentCatalog

テスト環境の説明。

JSON 表現
{

  // Union field environment_catalog can be only one of the following:
  "androidDeviceCatalog": {
    object (AndroidDeviceCatalog)
  },
  "iosDeviceCatalog": {
    object (IosDeviceCatalog)
  },
  "networkConfigurationCatalog": {
    object (NetworkConfigurationCatalog)
  },
  "softwareCatalog": {
    object (ProvidedSoftwareCatalog)
  },
  "deviceIpBlockCatalog": {
    object (DeviceIpBlockCatalog)
  }
  // End of list of possible types for union field environment_catalog.
}
フィールド
共用体フィールド environment_catalog。出力専用。environment_catalog は次のいずれかになります。
androidDeviceCatalog

object (AndroidDeviceCatalog)

サポートされている Android デバイス。

iosDeviceCatalog

object (IosDeviceCatalog)

サポートされている iOS デバイス。

networkConfigurationCatalog

object (NetworkConfigurationCatalog)

サポートされているネットワーク構成。

softwareCatalog

object (ProvidedSoftwareCatalog)

TestExecutionService が提供するソフトウェア テスト環境。

deviceIpBlockCatalog

object (DeviceIpBlockCatalog)

テスト環境のデバイスで使用される IP ブロック。

AndroidDeviceCatalog

現在サポートされている Android デバイス。

JSON 表現
{
  "models": [
    {
      object (AndroidModel)
    }
  ],
  "versions": [
    {
      object (AndroidVersion)
    }
  ],
  "runtimeConfiguration": {
    object (AndroidRuntimeConfiguration)
  }
}
フィールド
models[]

object (AndroidModel)

サポートされている Android デバイスモデルのセット。

versions[]

object (AndroidVersion)

サポートされている Android OS のバージョンのセット。

runtimeConfiguration

object (AndroidRuntimeConfiguration)

サポートされているランタイム構成のセット。

AndroidModel

テストが実行される可能性がある Android デバイスの説明。

JSON 表現
{
  "id": string,
  "name": string,
  "manufacturer": string,
  "brand": string,
  "codename": string,
  "form": enum (DeviceForm),
  "formFactor": enum (DeviceFormFactor),
  "perVersionInfo": [
    {
      object (PerAndroidVersionInfo)
    }
  ],
  "screenX": integer,
  "screenY": integer,
  "screenDensity": integer,
  "lowFpsVideoRecording": boolean,
  "supportedVersionIds": [
    string
  ],
  "supportedAbis": [
    string
  ],
  "tags": [
    string
  ],
  "thumbnailUrl": string
}
フィールド
id

string

このモデルの一意の不透明 ID。これを使用して TestExecutionService を呼び出します。

name

string

このデバイスモデルの、人が読める形式のマーケティング名。例: "Nexus 5"、"Galaxy S5"。

manufacturer

string

このデバイスのメーカー。

brand

string

このデバイスのブランド名。例: "Google"、"Samsung"。

codename

string

工業デザインの名称。android.os.Build.DEVICE に対応しています。

form

enum (DeviceForm)

このデバイスが仮想デバイスか物理デバイスか。

formFactor

enum (DeviceFormFactor)

このデバイスがスマートフォン、タブレット、ウェアラブルなどのいずれであるか

perVersionInfo[]

object (PerAndroidVersionInfo)

Android モデルのバージョン固有の情報。

screenX

integer

ピクセル単位の水平方向(X)の画面サイズ。

screenY

integer

縦方向(Y)の画面サイズ(ピクセル単位)。

screenDensity

integer

画面密度(DPI)。これは ro.sf.lcd_frequency に対応します。

lowFpsVideoRecording

boolean

このモデルを使用したテストがスクリーンショットを合成して記録した場合にのみ true になります。デバイス構成の use_low_spec_video_recording をご覧ください。

supportedVersionIds[]

string

このデバイスがサポートする Android バージョンのセット。

supportedAbis[]

string

このデバイスでサポートされている ABI のリスト。これは、android.os.Build.SUPPORTED_ABIS(API レベル 21 以上の場合)または android.os.Build.CPU_ABI/CPU_ABI2 に対応します。最も優先される ABI はリストの最初の要素です。

要素にはオプションで接頭辞「versionId:」が付きます。(versionId は AndroidVersion の ID)。これは、特定のバージョンでのみサポートされている ABI を示します。

tags[]

string

このディメンションのタグ。例: "default"、"preview"、"deprecated"。

thumbnailUrl

string

デバイスのサムネイル画像(写真)の URL。

DeviceForm

デバイスが物理デバイスまたは仮想デバイスのどちらであるか。

列挙型
DEVICE_FORM_UNSPECIFIED 使用しないでください。proto バージョニング専用です。
VIRTUAL Compute Engine ネイティブの仮想化を使用する Android 仮想デバイス。Firebase Test Lab のみ。
PHYSICAL 実際のハードウェア。
EMULATOR ネストされた仮想化でエミュレータを使用している Android 仮想デバイス。Android Studio と同等です。

DeviceFormFactor

デバイスのフォーム ファクタ。

列挙型
DEVICE_FORM_FACTOR_UNSPECIFIED 使用しないでください。proto バージョニング専用です。
PHONE このデバイスはスマートフォンの形をしています。
TABLET このデバイスはタブレットの形をしています。
WEARABLE このデバイスは腕時計またはその他のウェアラブルの形をしています。

PerAndroidVersionInfo

Android モデルのバージョン固有の情報。

JSON 表現
{
  "versionId": string,
  "deviceCapacity": enum (DeviceCapacity),
  "interactiveDeviceAvailabilityEstimate": string,
  "directAccessVersionInfo": {
    object (DirectAccessVersionInfo)
  }
}
フィールド
versionId

string

Android のバージョン。

deviceCapacity

enum (DeviceCapacity)

各 Android バージョンのオンライン デバイスの数。

interactiveDeviceAvailabilityEstimate

string (Duration format)

出力専用。ダイレクト アクセスを使用した 1 回のインタラクティブ デバイス セッションの推定待ち時間。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

directAccessVersionInfo

object (DirectAccessVersionInfo)

出力専用。この Android バージョンの DirectAccess でサポートされているクライアントを識別します。

デバイスの容量

容量はラボで使用するオンライン デバイスの数に基づきます。

重要: デバイスの容量は、その時点でのキューの長さを直接反映しません。現在のトラフィックやデバイスの状態は考慮されません。

実機の場合、この値は過去 30 日間のオンライン デバイスの平均値です。

列挙型
DEVICE_CAPACITY_UNSPECIFIED デバイス容量の値が不明であるか、設定されていません。
DEVICE_CAPACITY_HIGH

大容量のデバイス(ラボでは多数のデバイスが使用されています)。

一般に、これらのデバイスは、多数のテスト(100 件を超えるテストなど)を同時に実行する場合に推奨されます。

大容量のデバイスでは、次のような複数の要因により待ち時間が短くなるとは限りませんのでご注意ください。1.トラフィック(その時点でのトラフィック量)2.特定の用途では大容量のデバイスが優先されるため、ユーザーによるテストは、他の類似したデバイスタイプを選択した場合よりも遅くなる可能性があります。

DEVICE_CAPACITY_MEDIUM

中程度の容量のデバイス(ラボではかなりの数のデバイスがありますが、大容量のデバイスほどではありません)。

これらのデバイスは、少ないテスト実行(たとえば 100 テスト未満)に適しており、シャード数が少ない場合(シャードが 10 未満など)にのみ適しています。

DEVICE_CAPACITY_LOW

容量の少ないデバイス(ラボで使用するデバイスは少数です)。

ユーザーがこの特定のデバイスモデルとバージョンでテストする必要がある場合に、これらのデバイスが使用されることがあります。容量が少ないため、特に多数のテストを一度に呼び出す場合は、テストの完了に非常に時間がかかることがあります。これらのデバイスは、テストのシャーディングには適していません。

DEVICE_CAPACITY_NONE

ラボからまったくないデバイス

これらのデバイスは、一時的または恒久的に利用できなくなるため、リクエストしないでください。デバイスも非推奨としてマークされている場合、この状態は永続的なものであると考えられます。

DirectAccessVersionInfo

ダイレクト アクセスがサポートされているかどうか、またどのクライアントのバージョンでサポートされているかを示します。

DirectAccessService は現在、一部のデベロッパー様を対象としたプレビュー版として提供されています。チームを代表して https://developer.android.com/studio/preview/android-device-streaming から今すぐ登録できます。

JSON 表現
{
  "directAccessSupported": boolean,
  "minimumAndroidStudioVersion": string
}
フィールド
directAccessSupported

boolean

直接アクセスがサポートされているかどうか。クライアントはデバイスリストを絞り込んで、ダイレクト アクセスをサポートする Android モデルとバージョンのみに絞り込むことが求められます。

minimumAndroidStudioVersion

string

出力専用。クライアントとデバイスの互換性を示します。この場合、デバイスは Android Studio クライアントに実装された特定の回避策でのみ動作することが知られています。「major.minor.micro.patch」の形式で指定してください。例:「5921.22.2211.8881706」。

AndroidVersion

Android OS のバージョン。

JSON 表現
{
  "id": string,
  "versionString": string,
  "apiLevel": integer,
  "codeName": string,
  "releaseDate": {
    object (Date)
  },
  "distribution": {
    object (Distribution)
  },
  "tags": [
    string
  ]
}
フィールド
id

string

この Android バージョンの不透明な ID。この ID を使用して TestExecutionService を呼び出します。

versionString

string

このバージョンの Android OS を表す文字列。例: "4.3"、"4.4"。

apiLevel

integer

この Android バージョンの API レベル。例: 18、19。

codeName

string

この Android バージョンのコードネーム。例: "JellyBean"、"KitKat"。

releaseDate

object (Date)

この Android バージョンが発売された日付です。

distribution

object (Distribution)

このバージョンのマーケット シェア。

tags[]

string

このディメンションのタグ。例: "default"、"preview"、"deprecated"。

日付

誕生日などのように、カレンダーの日付全体またはその一部を表します。時間帯とタイムゾーンは、他の場所で指定されているか、重要ではありません。日付はグレゴリオ暦を基準にしています。これは次のいずれかを表します。

  • ゼロ以外の年、月、日の値を含む完全な日付。
  • 年の値がゼロである月と日(記念日など)。
  • 月と日の値がゼロである単独の年。
  • 日がゼロである年と月(クレジット カードの有効期限など)

関連するタイプ:

JSON 表現
{
  "year": integer,
  "month": integer,
  "day": integer
}
フィールド
year

integer

その日付の年。1~9999、または年のない日付を指定する場合は 0 にする必要があります。

month

integer

1 年の中の月。1~12、または月と日のない年を指定する場合は 0 にする必要があります。

day

integer

1 月の中の日付。1~31 で、その年と月に対して有効である必要があります。または、日が重要でない場合に、年のみか年と月を指定するには 0 にする必要があります。

分布

特定の Android プラットフォーム構成を実行しているデバイスの相対的な数に関するデータ。

JSON 表現
{
  "measurementTime": string,
  "marketShare": number
}
フィールド
measurementTime

string (Timestamp format)

出力専用。この分布が測定された時間。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

marketShare

number

出力専用。この構成について市場全体での推定される割合(0~1)。

AndroidRuntimeConfiguration

テストが実行されるときに選択できる Android 構成。

JSON 表現
{
  "locales": [
    {
      object (Locale)
    }
  ],
  "orientations": [
    {
      object (Orientation)
    }
  ]
}
フィールド
locales[]

object (Locale)

使用可能なロケールのセット。

orientations[]

object (Orientation)

使用可能な画面の向きのセット。

言語 / 地域

言語のロケーションまたはリージョンの指定。

JSON 表現
{
  "id": string,
  "name": string,
  "region": string,
  "tags": [
    string
  ]
}
フィールド
id

string

この言語 / 地域の ID。例: "en-US"。

name

string

この言語/地域のわかりやすい名前。例: "English"

region

string

このロケールの地域を表す、わかりやすい文字列。例: "United States"。すべてのロケールには存在しません。

tags[]

string

このディメンションのタグ。例: "default"

Orientation

デバイスの画面の向き。

JSON 表現
{
  "id": string,
  "name": string,
  "tags": [
    string
  ]
}
フィールド
id

string

この向きの ID。例: "portrait"。

name

string

この向きのわかりやすい名前。例: "portrait"。

tags[]

string

このディメンションのタグ。例: "default"

IosDeviceCatalog

現在サポートされている iOS デバイス。

JSON 表現
{
  "models": [
    {
      object (IosModel)
    }
  ],
  "versions": [
    {
      object (IosVersion)
    }
  ],
  "xcodeVersions": [
    {
      object (XcodeVersion)
    }
  ],
  "runtimeConfiguration": {
    object (IosRuntimeConfiguration)
  }
}
フィールド
models[]

object (IosModel)

サポートされている iOS デバイスモデルのセット。

versions[]

object (IosVersion)

サポートされている iOS ソフトウェア バージョンのセット。

xcodeVersions[]

object (XcodeVersion)

サポートされている Xcode バージョンのセット。

runtimeConfiguration

object (IosRuntimeConfiguration)

サポートされているランタイム構成のセット。

IosModel

テストが実行される可能性がある iOS デバイスの説明。

JSON 表現
{
  "id": string,
  "name": string,
  "supportedVersionIds": [
    string
  ],
  "tags": [
    string
  ],
  "deviceCapabilities": [
    string
  ],
  "screenX": integer,
  "screenY": integer,
  "screenDensity": integer,
  "formFactor": enum (DeviceFormFactor),
  "perVersionInfo": [
    {
      object (PerIosVersionInfo)
    }
  ]
}
フィールド
id

string

このモデルの一意の不透明 ID。これを使用して TestExecutionService を呼び出します。

name

string

このデバイスモデルの名前(人が読める形式)。例: "iPhone 4s"、"iPad Mini 2"

supportedVersionIds[]

string

このデバイスでサポートされている iOS メジャー ソフトウェア バージョンのセット。

tags[]

string

このディメンションのタグ。例: "default"、"preview"、"deprecated"。

deviceCapabilities[]

string

デバイスの機能。https://developer.apple.com/library/archive/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html からコピーされました

screenX

integer

ピクセル単位の水平方向(X)の画面サイズ。

screenY

integer

縦方向(Y)の画面サイズ(ピクセル単位)。

screenDensity

integer

画面密度(DPI)。

formFactor

enum (DeviceFormFactor)

このデバイスがスマートフォン、タブレット、ウェアラブルなどのいずれであるか

perVersionInfo[]

object (PerIosVersionInfo)

iOS モデルのバージョン固有の情報。

PerIosVersionInfo

iOS モデルのバージョン固有の情報。

JSON 表現
{
  "versionId": string,
  "deviceCapacity": enum (DeviceCapacity)
}
フィールド
versionId

string

iOS バージョン。

deviceCapacity

enum (DeviceCapacity)

各 iOS バージョンのオンライン デバイスの数です。

IosVersion

iOS バージョン。

JSON 表現
{
  "id": string,
  "majorVersion": integer,
  "minorVersion": integer,
  "tags": [
    string
  ],
  "supportedXcodeVersionIds": [
    string
  ]
}
フィールド
id

string

この iOS バージョンの不透明な ID。この ID を使用して TestExecutionService を呼び出します。

majorVersion

integer

iOS のメジャー バージョンを表す整数。例: "8"、"9"。

minorVersion

integer

iOS のマイナー バージョンを表す整数。例: "1"、"2"。

tags[]

string

このディメンションのタグ。例: "default"、"preview"、"deprecated"。

supportedXcodeVersionIds[]

string

このバージョンで使用可能な Xcode バージョン。

XcodeVersion

iOS バージョンと互換性のある Xcode バージョン。

JSON 表現
{
  "version": string,
  "tags": [
    string
  ]
}
フィールド
version

string

このバージョンの ID。例: "9.2"。

tags[]

string

この Xcode バージョンのタグ。例: "default"

IosRuntimeConfiguration

テストが実行されるときに選択できる iOS 構成。

JSON 表現
{
  "locales": [
    {
      object (Locale)
    }
  ],
  "orientations": [
    {
      object (Orientation)
    }
  ]
}
フィールド
locales[]

object (Locale)

使用可能なロケールのセット。

orientations[]

object (Orientation)

使用可能な画面の向きのセット。

NetworkConfigurationCatalog

JSON 表現
{
  "configurations": [
    {
      object (NetworkConfiguration)
    }
  ]
}
フィールド
configurations[]

object (NetworkConfiguration)

NetworkConfiguration

JSON 表現
{
  "id": string,
  "upRule": {
    object (TrafficRule)
  },
  "downRule": {
    object (TrafficRule)
  }
}
フィールド
id

string

このネットワーク トラフィック構成の一意の不透明 ID。

upRule

object (TrafficRule)

アップロード トラフィックに適用されるエミュレーション ルール。

downRule

object (TrafficRule)

ダウンロード トラフィックに適用されるエミュレーション ルール。

TrafficRule

ネットワーク エミュレーション パラメータ。

JSON 表現
{
  "delay": string,
  "packetLossRatio": number,
  "packetDuplicationRatio": number,
  "bandwidth": number,
  "burst": number
}
フィールド
delay

string (Duration format)

パケット遅延。0 以上でなければなりません。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

packetLossRatio

number

パケットロス率(0.0 ~ 1.0)。

packetDuplicationRatio

number

パケット重複率(0.0 ~ 1.0)。

bandwidth

number

帯域幅(キロビット/秒)。

burst

number

バーストサイズ(キロビット単位)。

ProvidedSoftwareCatalog

テスト中のデバイス上で現在提供されているソフトウェア環境。

JSON 表現
{
  "orchestratorVersion": string,
  "androidxOrchestratorVersion": string
}
フィールド
orchestratorVersion
(deprecated)

string

非推奨: 今後は AndroidX Test Orchestrator を使用してください。

環境で使用される Android Test Orchestrator の現在のバージョンを表す文字列。パッケージは https://maven.google.com/web/index.html#com.android.support.test:orchestrator から入手できます。

androidxOrchestratorVersion

string

環境で使用される AndroidX Test Orchestrator の現在のバージョンを表す文字列。このパッケージは https://maven.google.com/web/index.html#androidx.test:orchestrator から入手できます。

DeviceIpBlockCatalog

Firebase Test Lab で使用される IP ブロックのリスト

JSON 表現
{
  "ipBlocks": [
    {
      object (DeviceIpBlock)
    }
  ]
}
フィールド
ipBlocks[]

object (DeviceIpBlock)

Firebase Test Lab で使用されるデバイスの IP ブロック

DeviceIpBlock

単一のデバイス IP ブロック

JSON 表現
{
  "block": string,
  "form": enum (DeviceForm),
  "addedDate": {
    object (Date)
  }
}
フィールド
block

string

CIDR 表記の IP アドレス ブロック(例: 34.68.194.64/29)

form

enum (DeviceForm)

このブロックが物理デバイスと仮想デバイスのどちらで使用されているか

addedDate

object (Date)

このブロックが Firebase Test Lab に追加された日付

メソッド

get

サポートされているテスト環境のカタログを取得します。