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次のいずれか 1 つだけです。
androidDeviceCatalog

object ( AndroidDeviceCatalog )

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

iosDeviceCatalog

object ( IosDeviceCatalog )

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

networkConfigurationCatalog

object ( NetworkConfigurationCatalog )

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

softwareCatalog

object ( ProvidedSoftwareCatalog )

TestExecutionService によって提供されるソフトウェア テスト環境。

deviceIpBlockCatalog

object ( DeviceIpBlockCatalog )

テスト環境内のデバイスによって使用される IP ブロック。

Androidデバイスカタログ

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

JSON表現
{
  "models": [
    {
      object (AndroidModel)
    }
  ],
  "versions": [
    {
      object (AndroidVersion)
    }
  ],
  "runtimeConfiguration": {
    object (AndroidRuntimeConfiguration)
  }
}
田畑
models[]

object ( AndroidModel )

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

versions[]

object ( AndroidVersion )

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

runtimeConfiguration

object ( AndroidRuntimeConfiguration )

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

Androidモデル

テストを実行できる 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_density に対応します

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

このディメンションのタグ。例: 「デフォルト」、「プレビュー」、「非推奨」。

thumbnailUrl

string

デバイスのサムネイル画像(写真)の 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 (DeviceCapacity)
}
田畑
versionId

string

Android バージョン。

deviceCapacity

enum ( 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 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

このディメンションのタグ。例: 「デフォルト」、「プレビュー」、「非推奨」。

日付

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

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

関連タイプ:

JSON表現
{
  "year": integer,
  "month": integer,
  "day": integer
}
田畑
year

integer

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

month

integer

一年の月。 1 ~ 12 の値を指定するか、月と日を含まない年を指定する場合は 0 を指定する必要があります。

day

integer

毎月の日。年と月に対して有効な 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)。

Androidランタイム構成

テストの実行時に選択できる 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

この言語/ロケールの人間にわかりやすい名前。例:「英語」。

region

string

このロケールの地域を表す、人間にわかりやすい文字列。例: 「米国」。すべてのロケールに存在するわけではありません。

tags[]

string

このディメンションのタグ。例: 「デフォルト」。

オリエンテーション

デバイスの画面の向き。

JSON表現
{
  "id": string,
  "name": string,
  "tags": [
    string
  ]
}
田畑
id

string

この方向の ID。例:「ポートレート」。

name

string

この方向の人間にわかりやすい名前。例:「ポートレート」。

tags[]

string

このディメンションのタグ。例: 「デフォルト」。

Iosデバイスカタログ

現在サポートされている 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 )

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

Iosモデル

テストを実行できる 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

このディメンションのタグ。例: 「デフォルト」、「プレビュー」、「非推奨」。

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モデルのバージョン固有の情報。

PerIosバージョン情報

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

JSON表現
{
  "versionId": string,
  "deviceCapacity": enum (DeviceCapacity)
}
田畑
versionId

string

iOS バージョン。

deviceCapacity

enum ( DeviceCapacity )

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

Iosバージョン

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

このディメンションのタグ。例: 「デフォルト」、「プレビュー」、「非推奨」。

supportedXcodeVersionIds[]

string

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

Xcodeバージョン

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

JSON表現
{
  "version": string,
  "tags": [
    string
  ]
}
田畑
version

string

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

tags[]

string

この Xcode バージョンのタグ。例: 「デフォルト」。

Iosランタイム構成

テストの実行時に選択できる iOS 構成。

JSON表現
{
  "locales": [
    {
      object (Locale)
    }
  ],
  "orientations": [
    {
      object (Orientation)
    }
  ]
}
田畑
locales[]

object ( Locale )

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

orientations[]

object ( Orientation )

利用可能な方向のセット。

ネットワーク構成カタログ

JSON表現
{
  "configurations": [
    {
      object (NetworkConfiguration)
    }
  ]
}
田畑
configurations[]

object ( NetworkConfiguration )

ネットワーク設定

JSON表現
{
  "id": string,
  "upRule": {
    object (TrafficRule)
  },
  "downRule": {
    object (TrafficRule)
  }
}
田畑
id

string

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

upRule

object ( TrafficRule )

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

downRule

object ( 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

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

提供ソフトウェアカタログ

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

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で入手できます。

デバイスIpブロックカタログ

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

JSON表現
{
  "ipBlocks": [
    {
      object (DeviceIpBlock)
    }
  ]
}
田畑
ipBlocks[]

object ( DeviceIpBlock )

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

デバイスIpブロック

単一デバイスの 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

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