AWS Device Farm - AWS CodePipeline

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS Device Farm

Em seu pipeline, você pode configurar uma ação de teste que usaAWS Device Farmpara executar e testar seu aplicativo em dispositivos. O Device Farm usa pools de teste de dispositivos e estruturas de teste para testar aplicativos em dispositivos específicos. Para obter mais informações sobre os tipos de estruturas de teste compatíveis com a ação do Device Farm, consulteComo trabalhar com tipos de testes noAWSDevice Farm.

Tipo de ação

  • Categoria: Test

  • Proprietário: AWS

  • Fornecedor: DeviceFarm

  • Versão: 1

Parâmetros de configuração

AppType

: obrigatório Sim

O sistema operacional e o tipo de aplicativo que você está testando. Veja a seguir uma lista de valores válidos:

  • iOS

  • Android

  • Web

ProjectId

: obrigatório Sim

O ID do projeto do Device Farm.

Para localizar o ID do projeto, no console Device Farm, escolha o projeto. No navegador, copie o URL do novo projeto. O URL contém o ID do projeto. O ID do projeto é o valor na URL apósprojects/. No exemplo a seguir, o ID do projeto éeec4905f-98f8-40aa-9afc-4c1cfexample.

https://<region-URL>/devicefarm/home?region=us-west-2#/projects/eec4905f-98f8-40aa-9afc-4c1cfexample/runs
App

: obrigatório Sim

O nome e a localização do arquivo do aplicativo em seu artefato de entrada. Por exemplo: s3-ios-test-1.ipa

AppiumVersion

: obrigatório Sim

A versão do framework de teste Appium a ser usado para este teste.

nota

O valor do campo AppiumVersion não é processado. Em vez disso, o valor padrão é processado.

DevicePoolarn

: obrigatório Sim

ARN de grupos de dispositivos do Device Farm.

Para obter os ARNs de pool de dispositivos disponíveis para o projeto, incluindo o ARN para dispositivos principais, use oAWSCLI para inserir o seguinte comando:

aws devicefarm list-device-pools --arn arn:aws:devicefarm:us-west-2:account_ID:project:project_ID
TestType

: obrigatório Sim

Especifica a estrutura de teste suportada para o seu teste. Veja a seguir uma lista de valores válidos paraTestType:

  • APPIUM_JAVA_JUNIT

  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • APPIUM_WEB_PYTHON

  • BUILTIN_EXPLORER

  • BUILTIN_FUZZ

  • CALABASH

  • INSTRUMENTATION

  • UIAUTOMATION

  • UIAUTOMATOR

  • WEB_PERFORMANCE_PROFILE

  • XCTEST

  • XCTEST_UI

nota

Os seguintes tipos de teste não são suportados pela ação emCodePipelineWEB_PERFORMANCE_PROFILE,APPIUM_NODE,APPIUM_RUBY,APPIUM_WEB_NODE,APPIUM_WEB_RUBY,REMOTE_ACCESS_RECORD, eREMOTE_ACCESS_REPLAY.

Para obter informações sobre tipos de teste do Device Farm, consulteComo trabalhar com tipos de testes noAWSDevice Farm.

RadioBlueToothEnabled

: obrigatório Não

Um valor Booliano que indica se é necessário permitir o Bluetooth no início do teste.

RecordAppPerformanceData

: obrigatório Não

Um valor booleano que indica se os dados de desempenho do dispositivo devem ser registrados, como CPU, FPS e desempenho da memória durante o teste.

RecordVideo

: obrigatório Não

Um valor Booliano que indica se o vídeo deve ser gravado durante o teste.

RadioWifiEnabled

: obrigatório Não

Um valor Booliano que indica se é necessário permitir o Wi-Fi no início do teste.

RadionFCEnabled

: obrigatório Não

Um valor Booliano que indica se o NFC deve ser habilitado no início do teste.

RadiogPSEnabled

: obrigatório Não

Um valor Booliano que indica se o GPS deve ser habilitado no início do teste.

Teste

: obrigatório Não

O nome e o caminho do arquivo de definição de teste em seu local de origem. O caminho é relativo à raiz do artefato de entrada para o teste.

FuzzEventCount

: obrigatório Não

O número de eventos de interface de usuário que o teste Fuzz deve executar, entre 1 e 10.000.

FuzzEventThrottle

: obrigatório Não

O número de milissegundos que o teste Fuzz deve aguardar para realizar o próximo evento de interface de usuário, entre 1 e 1.000.

FuzzRandomizerSeed

: obrigatório Não

Uma semente para o teste Fuzz usar para randomizar eventos de interface de usuário. Usar o mesmo número para testes Fuzz subsequentes resulta em sequências de eventos idênticas.

CustomHostMachineArtefacts

: obrigatório Não

O local na máquina host onde os artefatos personalizados serão armazenados.

CustomDeviceArtefacts

: obrigatório Não

O local no dispositivo onde os artefatos personalizados serão armazenados.

UnmetroedDevicesOnly

: obrigatório Não

Um valor Booliano que indica se é necessário usar apenas seus dispositivos não limitados ao executar testes nesta etapa.

JobTimeoutMinutes

: obrigatório Não

O número de minutos que uma execução de teste será executada por dispositivo antes de alcançar o tempo limite.

Latitude

: obrigatório Não

A latitude do dispositivo expressa em graus de sistema de coordenadas geográficas.

Longitude

: obrigatório Não

A longitude do dispositivo expressa em graus de sistema de coordenadas geográficas.

Artefatos de entrada

  • Número de artefatos: 1

  • Descrição: O conjunto de artefatos a ser disponibilizado para a ação de teste. O Device Farm procura o aplicativo criado e as definições de teste para usar.

Artefatos de saída

  • Número de artefatos: 0

  • Descrição: Artefatos de saída não se aplicam a esse tipo de ação.

Declaração de ação

YAML
Name: Test Actions: - Name: TestDeviceFarm ActionTypeId: category: Test owner: AWS provider: DeviceFarm version: '1' RunOrder: 1 Configuration: App: s3-ios-test-1.ipa AppType: iOS DevicePoolArn: >- arn:aws:devicefarm:us-west-2::devicepool:0EXAMPLE-d7d7-48a5-ba5c-b33d66efa1f5 FuzzEventCount: '6000' FuzzEventThrottle: '50' ProjectId: eec4905f-98f8-40aa-9afc-4c1cfEXAMPLE TestType: BUILTIN_FUZZ OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-west-2
JSON
{ "Name": "Test", "Actions": [ { "Name": "TestDeviceFarm", "ActionTypeId": { "category": "Test", "owner": "AWS", "provider": "DeviceFarm", "version": "1" }, "RunOrder": 1, "Configuration": { "App": "s3-ios-test-1.ipa", "AppType": "iOS", "DevicePoolArn": "arn:aws:devicefarm:us-west-2::devicepool:0EXAMPLE-d7d7-48a5-ba5c-b33d66efa1f5", "FuzzEventCount": "6000", "FuzzEventThrottle": "50", "ProjectId": "eec4905f-98f8-40aa-9afc-4c1cfEXAMPLE", "TestType": "BUILTIN_FUZZ" }, "OutputArtifacts": [], "InputArtifacts": [ { "Name": "SourceArtifact" } ], "Region": "us-west-2" } ] },

Os recursos relacionados a seguir podem ajudar você à medida que trabalha com esta ação.