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 블록입니다.

AndroidDevice카탈로그

현재 지원되는 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

이 장치의 브랜드가 표시된 회사입니다. 예: '구글', '삼성'.

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입니다.

DeviceForm

장치가 물리적인지 가상인지 여부.

열거형
DEVICE_FORM_UNSPECIFIED 사용하지 마세요. 프로토 버전 관리에만 해당됩니다.
VIRTUAL Compute Engine 기본 가상화를 사용하는 Android 가상 기기입니다. Firebase Test Lab에만 해당됩니다.
PHYSICAL 실제 하드웨어.
EMULATOR 중첩된 가상화에서 에뮬레이터를 사용하는 Android 가상 장치입니다. 안드로이드 스튜디오와 동일합니다.

장치폼팩터

장치의 폼 팩터입니다.

열거형
DEVICE_FORM_FACTOR_UNSPECIFIED 사용하지 마세요. 프로토 버전 관리에만 해당됩니다.
PHONE 이 장치는 전화기 모양입니다.
TABLET 이 장치는 태블릿 모양입니다.
WEARABLE 이 장치는 시계 또는 기타 웨어러블 모양입니다.

PerAndroid버전정보

Android 모델의 버전별 정보입니다.

JSON 표현
{
  "versionId": string,
  "deviceCapacity": enum (DeviceCapacity)
}
필드
versionId

string

안드로이드 버전.

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버전

안드로이드 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

이 차원에 대한 태그입니다. 예: '기본값', '미리보기', '지원 중단됨'.

날짜

생일과 같은 전체 또는 부분 달력 날짜를 나타냅니다. 시간과 시간대는 다른 곳에 지정되거나 중요하지 않습니다. 날짜는 그레고리력을 기준으로 합니다. 이는 다음 중 하나를 나타낼 수 있습니다.

  • 0이 아닌 연도, 월, 일 값을 갖는 전체 날짜입니다.
  • 연도가 0인 월과 일(예: 기념일)입니다.
  • 0월과 0일이 있는 1년입니다.
  • 0일이 포함된 연도 및 월입니다(예: 신용 카드 만료일).

관련 유형:

JSON 표현
{
  "year": integer,
  "month": integer,
  "day": integer
}
필드
year

integer

날짜의 연도입니다. 1~9999 사이여야 하며, 연도 없이 날짜를 지정하려면 0이어야 합니다.

month

integer

1년의 달. 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

이 차원에 대한 태그입니다. 예: "기본값".

IosDevice카탈로그

현재 지원되는 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보다 커야 합니다.

최대 9자리의 소수 자릿수를 포함하는 초 단위 기간이며 ' s '로 끝납니다. 예: "3.5s" .

packetLossRatio

number

패킷 손실 비율(0.0 - 1.0).

packetDuplicationRatio

number

패킷 복제 비율(0.0 - 1.0).

bandwidth

number

대역폭(kb/초)입니다.

burst

number

버스트 크기(KB)입니다.

제공되는 소프트웨어 카탈로그

테스트 중인 장치에 현재 제공되는 소프트웨어 환경입니다.

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 에서 사용할 수 있습니다.

DeviceIpBlock카탈로그

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

지원되는 테스트 환경의 카탈로그를 가져옵니다.