REST Resource: testEnvironmentCatalog

Recurso: TestEnvironmentCatalog

Uma descrição de um ambiente de teste.

representação 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.
}
Campos
Campo de união environment_catalog . Somente saída. environment_catalog pode ser apenas um dos seguintes:
androidDeviceCatalog

object ( AndroidDeviceCatalog )

Dispositivos Android suportados.

iosDeviceCatalog

object ( IosDeviceCatalog )

Dispositivos iOS suportados.

networkConfigurationCatalog

object ( NetworkConfigurationCatalog )

Configurações de rede suportadas.

softwareCatalog

object ( ProvidedSoftwareCatalog )

O ambiente de teste de software fornecido por TestExecutionService.

deviceIpBlockCatalog

object ( DeviceIpBlockCatalog )

Os blocos de IP usados ​​pelos dispositivos no ambiente de teste.

AndroidDeviceCatalog

Os dispositivos Android atualmente suportados.

representação JSON
{
  "models": [
    {
      object (AndroidModel)
    }
  ],
  "versions": [
    {
      object (AndroidVersion)
    }
  ],
  "runtimeConfiguration": {
    object (AndroidRuntimeConfiguration)
  }
}
Campos
models[]

object ( AndroidModel )

O conjunto de modelos de dispositivos Android compatíveis.

versions[]

object ( AndroidVersion )

O conjunto de versões do sistema operacional Android com suporte.

runtimeConfiguration

object ( AndroidRuntimeConfiguration )

O conjunto de configurações de tempo de execução com suporte.

AndroidModel

Uma descrição de testes de um dispositivo Android pode ser executada.

representação 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
}
Campos
id

string

O id opaco exclusivo para este modelo. Use isso para chamar o TestExecutionService.

name

string

O nome de marketing legível para este modelo de dispositivo. Exemplos: "Nexus 5", "Galaxy S5".

manufacturer

string

O fabricante deste dispositivo.

brand

string

A empresa com a qual este dispositivo é marcado. Exemplo: "Google", "Samsung".

codename

string

O nome do desenho industrial. Isso corresponde a android.os.Build.DEVICE.

form

enum ( DeviceForm )

Se este dispositivo é virtual ou físico.

formFactor

enum ( DeviceFormFactor )

Se este dispositivo é um telefone, tablet, wearable, etc.

perVersionInfo[]

object ( PerAndroidVersionInfo )

Informações específicas da versão de um modelo Android.

screenX

integer

Tamanho da tela na dimensão horizontal (X) medida em pixels.

screenY

integer

Tamanho da tela na dimensão vertical (Y) medida em pixels.

screenDensity

integer

Densidade da tela em DPI. Isso corresponde a ro.sf.lcd_density

lowFpsVideoRecording

boolean

Verdadeiro se e somente se os testes com este modelo forem registrados juntando capturas de tela. Consulte use_low_spec_video_recording na configuração do dispositivo.

supportedVersionIds[]

string

O conjunto de versões do Android compatível com este dispositivo.

supportedAbis[]

string

A lista de ABIs com suporte para este dispositivo. Isso corresponde a android.os.Build.SUPPORTED_ABIS (para API de nível 21 e superior) ou android.os.Build.CPU_ABI/CPU_ABI2. A ABI preferida é o primeiro elemento da lista.

Os elementos são opcionalmente prefixados por "versionId:" (em que versionId é o id de um AndroidVersion), denotando uma ABI compatível apenas com uma versão específica.

tags[]

string

Tags para esta dimensão. Exemplos: "default", "preview", "obsoleto".

thumbnailUrl

string

URL de uma imagem em miniatura (foto) do dispositivo.

DeviceForm

Se o dispositivo é físico ou virtual.

Enums
DEVICE_FORM_UNSPECIFIED Não use. Apenas para versão proto.
VIRTUAL Dispositivo virtual Android usando virtualização nativa do Compute Engine. Somente Firebase Test Lab.
PHYSICAL Hardware real.
EMULATOR Dispositivo virtual Android usando emulador na virtualização aninhada. Equivalente ao Android Studio.

DeviceFormFactor

O fator de forma de um dispositivo.

Enums
DEVICE_FORM_FACTOR_UNSPECIFIED Não use. Apenas para versão proto.
PHONE Este dispositivo tem a forma de um telefone.
TABLET Este dispositivo tem a forma de um tablet.
WEARABLE Este dispositivo tem a forma de um relógio ou outro wearable.

PerAndroidVersionInfo

Uma informação específica da versão de um modelo Android.

representação JSON
{
  "versionId": string,
  "deviceCapacity": enum (DeviceCapacity)
}
Campos
versionId

string

Uma versão Android.

deviceCapacity

enum ( DeviceCapacity )

O número de dispositivos online para uma versão do Android.

DeviceCapacity

Capacidade com base no número de dispositivos online no laboratório.

Importante: a capacidade do dispositivo não reflete diretamente o comprimento da fila em um momento. Não leva em consideração o tráfego atual ou o estado dos dispositivos.

Para dispositivos físicos, o número é a média de dispositivos online nos últimos 30 dias.

Enums
DEVICE_CAPACITY_UNSPECIFIED O valor da capacidade do dispositivo é desconhecido ou não definido.
DEVICE_CAPACITY_HIGH

Dispositivos de alta capacidade (o laboratório possui um grande número desses dispositivos).

Esses dispositivos são geralmente sugeridos para executar um grande número de testes simultâneos (por exemplo, mais de 100 testes).

Observe que dispositivos de alta capacidade não garantem tempos de espera curtos devido a vários fatores: 1. Tráfego (quanto eles são usados ​​em um determinado momento) 2. Dispositivos de alta capacidade são priorizados para determinados usos, o que pode tornar os testes do usuário mais lentos do que selecionar outros tipos de dispositivos semelhantes.

DEVICE_CAPACITY_MEDIUM

Dispositivos de capacidade média (o laboratório tem um número decente desses dispositivos, embora não tantos quanto os dispositivos de alta capacidade).

Esses dispositivos são adequados para menos execuções de teste (por exemplo, menos de 100 testes) e apenas para baixas contagens de fragmentos (por exemplo, menos de 10 fragmentos).

DEVICE_CAPACITY_LOW

Dispositivos de baixa capacidade (o laboratório possui um pequeno número desses dispositivos).

Esses dispositivos podem ser usados ​​se os usuários precisarem testar esse modelo e versão de dispositivo específico. Observe que, devido à baixa capacidade, os testes podem demorar muito mais para serem concluídos, especialmente se um grande número de testes for executado de uma só vez. Esses dispositivos não são adequados para fragmentação de teste.

DEVICE_CAPACITY_NONE

Dispositivos que estão completamente ausentes do laboratório.

Esses dispositivos estão indisponíveis temporária ou permanentemente e não devem ser solicitados. Se o dispositivo também estiver marcado como obsoleto, esse estado provavelmente será permanente.

AndroidVersão

Uma versão do sistema operacional Android.

representação JSON
{
  "id": string,
  "versionString": string,
  "apiLevel": integer,
  "codeName": string,
  "releaseDate": {
    object (Date)
  },
  "distribution": {
    object (Distribution)
  },
  "tags": [
    string
  ]
}
Campos
id

string

Um ID opaco para esta versão do Android. Use esse id para invocar o TestExecutionService.

versionString

string

Uma string que representa esta versão do sistema operacional Android. Exemplos: "4.3", "4.4".

apiLevel

integer

O nível da API para esta versão do Android. Exemplos: 18, 19.

codeName

string

O nome de código para esta versão do Android. Exemplos: "JellyBean", "KitKat".

releaseDate

object ( Date )

A data em que esta versão do Android foi disponibilizada no mercado.

distribution

object ( Distribution )

Participação de mercado para esta versão.

tags[]

string

Tags para esta dimensão. Exemplos: "default", "preview", "obsoleto".

Encontro

Representa uma data inteira ou parcial do calendário, como um aniversário. A hora do dia e o fuso horário são especificados em outro lugar ou são insignificantes. A data é relativa ao calendário gregoriano. Isso pode representar um dos seguintes:

  • Uma data completa, com valores de ano, mês e dia diferentes de zero.
  • Um mês e um dia, com um ano zero (por exemplo, um aniversário).
  • Um ano sozinho, com mês zero e dia zero.
  • Um ano e um mês, com um dia zero (por exemplo, a data de validade de um cartão de crédito).

Tipos relacionados:

representação JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Campos
year

integer

Ano da data. Deve ser de 1 a 9999 ou 0 para especificar uma data sem um ano.

month

integer

Mês de um ano. Deve ser de 1 a 12 ou 0 para especificar um ano sem mês e dia.

day

integer

Dia de um mês. Deve ser de 1 a 31 e válido para o ano e mês, ou 0 para especificar um ano sozinho ou um ano e mês onde o dia não é significativo.

Distribuição

Dados sobre o número relativo de dispositivos executando uma determinada configuração da plataforma Android.

representação JSON
{
  "measurementTime": string,
  "marketShare": number
}
Campos
measurementTime

string ( Timestamp format)

Somente saída. O tempo em que essa distribuição foi medida.

Um registro de data e hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z" .

marketShare

number

Somente saída. A fração estimada (0-1) do mercado total com esta configuração.

AndroidRuntimeConfiguration

Configuração do Android que pode ser selecionada no momento em que um teste é executado.

representação JSON
{
  "locales": [
    {
      object (Locale)
    }
  ],
  "orientations": [
    {
      object (Orientation)
    }
  ]
}
Campos
locales[]

object ( Locale )

O conjunto de localidades disponíveis.

orientations[]

object ( Orientation )

O conjunto de orientações disponíveis.

Localidade

Uma designação de local/região para o idioma.

representação JSON
{
  "id": string,
  "name": string,
  "region": string,
  "tags": [
    string
  ]
}
Campos
id

string

O id para esta localidade. Exemplo: "en_US".

name

string

Um nome amigável para este idioma/localidade. Exemplo: "inglês".

region

string

Uma string amigável que representa a região para este local. Exemplo: "Estados Unidos". Não está presente em todas as localidades.

tags[]

string

Tags para esta dimensão. Exemplo: "padrão".

Orientação

Orientação da tela do dispositivo.

representação JSON
{
  "id": string,
  "name": string,
  "tags": [
    string
  ]
}
Campos
id

string

O id para esta orientação. Exemplo: "retrato".

name

string

Um nome amigável para esta orientação. Exemplo: "retrato".

tags[]

string

Tags para esta dimensão. Exemplo: "padrão".

IosDeviceCatalog

Os dispositivos iOS atualmente suportados.

representação JSON
{
  "models": [
    {
      object (IosModel)
    }
  ],
  "versions": [
    {
      object (IosVersion)
    }
  ],
  "xcodeVersions": [
    {
      object (XcodeVersion)
    }
  ],
  "runtimeConfiguration": {
    object (IosRuntimeConfiguration)
  }
}
Campos
models[]

object ( IosModel )

O conjunto de modelos de dispositivos iOS compatíveis.

versions[]

object ( IosVersion )

O conjunto de versões de software iOS com suporte.

xcodeVersions[]

object ( XcodeVersion )

O conjunto de versões suportadas do Xcode.

runtimeConfiguration

object ( IosRuntimeConfiguration )

O conjunto de configurações de tempo de execução com suporte.

IosModel

Uma descrição de um teste de dispositivo iOS pode ser executada.

representação JSON
{
  "id": string,
  "name": string,
  "supportedVersionIds": [
    string
  ],
  "tags": [
    string
  ],
  "deviceCapabilities": [
    string
  ],
  "screenX": integer,
  "screenY": integer,
  "screenDensity": integer,
  "formFactor": enum (DeviceFormFactor),
  "perVersionInfo": [
    {
      object (PerIosVersionInfo)
    }
  ]
}
Campos
id

string

O id opaco exclusivo para este modelo. Use isso para chamar o TestExecutionService.

name

string

O nome legível para este modelo de dispositivo. Exemplos: "iPhone 4s", "iPad Mini 2".

supportedVersionIds[]

string

O conjunto das principais versões de software do iOS compatíveis com este dispositivo.

tags[]

string

Tags para esta dimensão. Exemplos: "default", "preview", "obsoleto".

deviceCapabilities[]

string

Capacidades do dispositivo. Copiado de https://developer.apple.com/library/archive/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html

screenX

integer

Tamanho da tela na dimensão horizontal (X) medida em pixels.

screenY

integer

Tamanho da tela na dimensão vertical (Y) medida em pixels.

screenDensity

integer

Densidade da tela em DPI.

formFactor

enum ( DeviceFormFactor )

Se este dispositivo é um telefone, tablet, wearable, etc.

perVersionInfo[]

object ( PerIosVersionInfo )

Informações específicas da versão de um modelo iOS.

PerIosVersionInfo

Uma informação específica da versão de um modelo iOS.

representação JSON
{
  "versionId": string,
  "deviceCapacity": enum (DeviceCapacity)
}
Campos
versionId

string

Uma versão iOS.

deviceCapacity

enum ( DeviceCapacity )

O número de dispositivos online para uma versão do iOS.

IosVersion

Uma versão iOS.

representação JSON
{
  "id": string,
  "majorVersion": integer,
  "minorVersion": integer,
  "tags": [
    string
  ],
  "supportedXcodeVersionIds": [
    string
  ]
}
Campos
id

string

Um ID opaco para esta versão do iOS. Use esse id para invocar o TestExecutionService.

majorVersion

integer

Um número inteiro que representa a versão principal do iOS. Exemplos: "8", "9".

minorVersion

integer

Um número inteiro que representa a versão secundária do iOS. Exemplos: "1", "2".

tags[]

string

Tags para esta dimensão. Exemplos: "default", "preview", "obsoleto".

supportedXcodeVersionIds[]

string

As versões disponíveis do Xcode para esta versão.

XcodeVersion

Uma versão do Xcode com a qual uma versão do iOS é compatível.

representação JSON
{
  "version": string,
  "tags": [
    string
  ]
}
Campos
version

string

O id para esta versão. Exemplo: "9.2".

tags[]

string

Tags para esta versão do Xcode. Exemplo: "padrão".

IosRuntimeConfiguration

Configuração do iOS que pode ser selecionada no momento em que um teste é executado.

representação JSON
{
  "locales": [
    {
      object (Locale)
    }
  ],
  "orientations": [
    {
      object (Orientation)
    }
  ]
}
Campos
locales[]

object ( Locale )

O conjunto de localidades disponíveis.

orientations[]

object ( Orientation )

O conjunto de orientações disponíveis.

Catálogo de configuração de rede

representação JSON
{
  "configurations": [
    {
      object (NetworkConfiguration)
    }
  ]
}
Campos
configurations[]

object ( NetworkConfiguration )

Configuração de rede

representação JSON
{
  "id": string,
  "upRule": {
    object (TrafficRule)
  },
  "downRule": {
    object (TrafficRule)
  }
}
Campos
id

string

O id opaco exclusivo para esta configuração de tráfego de rede.

upRule

object ( TrafficRule )

A regra de emulação aplicada ao tráfego de upload.

downRule

object ( TrafficRule )

A regra de emulação aplicada ao tráfego de download.

Regra de Tráfego

Parâmetros de emulação de rede.

representação JSON
{
  "delay": string,
  "packetLossRatio": number,
  "packetDuplicationRatio": number,
  "bandwidth": number,
  "burst": number
}
Campos
delay

string ( Duration format)

Atraso do pacote, deve ser >= 0.

Uma duração em segundos com até nove dígitos fracionários, terminando com ' s '. Exemplo: "3.5s" .

packetLossRatio

number

Taxa de perda de pacotes (0,0 - 1,0).

packetDuplicationRatio

number

Taxa de duplicação de pacotes (0,0 - 1,0).

bandwidth

number

Largura de banda em kbits/segundo.

burst

number

Tamanho da rajada em kbits.

Catálogo de Software Fornecido

O ambiente de software atualmente fornecido nos dispositivos em teste.

representação JSON
{
  "orchestratorVersion": string,
  "androidxOrchestratorVersion": string
}
Campos
orchestratorVersion
(deprecated)

string

Obsoleto: use o AndroidX Test Orchestrator daqui para frente.

Uma string que representa a versão atual do Android Test Orchestrator usada no ambiente. O pacote está disponível em https://maven.google.com/web/index.html#com.android.support.test:orchestrator .

androidxOrchestratorVersion

string

Uma string que representa a versão atual do AndroidX Test Orchestrator usada no ambiente. O pacote está disponível em https://maven.google.com/web/index.html#androidx.test:orchestrator .

DeviceIpBlockCatalog

Lista de blocos de IP usados ​​pelo Firebase Test Lab

representação JSON
{
  "ipBlocks": [
    {
      object (DeviceIpBlock)
    }
  ]
}
Campos
ipBlocks[]

object ( DeviceIpBlock )

Os blocos de IP do dispositivo usados ​​pelo Firebase Test Lab

DeviceIpBlock

Um único bloco de IP de dispositivo

representação JSON
{
  "block": string,
  "form": enum (DeviceForm),
  "addedDate": {
    object (Date)
  }
}
Campos
block

string

Um bloco de endereço IP na notação CIDR, por exemplo: 34.68.194.64/29

form

enum ( DeviceForm )

Se este bloco é usado por dispositivos físicos ou virtuais

addedDate

object ( Date )

A data em que este bloco foi adicionado ao Firebase Test Lab

Métodos

get

Obtém o catálogo de ambientes de teste com suporte.