View a markdown version of this page

AWS Device Farm riferimento all'azione di test - AWS CodePipeline

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS Device Farm riferimento all'azione di test

Nella pipeline, puoi configurare un'azione di test che viene utilizzata AWS Device Farm per eseguire e testare l'applicazione sui dispositivi. Device Farm utilizza pool di test di dispositivi e framework di test per testare le applicazioni su dispositivi specifici. Per informazioni sui tipi di framework di test supportati dall'azione Device Farm, vedi Utilizzo dei tipi di test in Device Farm. AWS

Tipo di operazione

  • Categoria: Test

  • Proprietario: AWS

  • Provider: DeviceFarm

  • Versione: 1

Parametri di configurazione

AppType

Obbligatorio: sì

Il sistema operativo e il tipo di applicazione che state testando. Di seguito è riportato un elenco di valori validi:

  • iOS

  • Android

  • Web

ProjectId

Obbligatorio: sì

L'ID del progetto Device Farm.

Per trovare l'ID del tuo progetto, nella console Device Farm, scegli il tuo progetto. Nel browser, copiare l'URL del nuovo progetto. L'URL contiene l'ID del progetto. L'ID del progetto è il valore nell'URL successivoprojects/. Nel seguente esempio, l'ID del progetto èeec4905f-98f8-40aa-9afc-4c1cfexample.

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

Obbligatorio: sì

Il nome e la posizione del file dell'applicazione nell'artefatto di input. Ad esempio, s3-ios-test-1.ipa

TestSpec

Condizionale: Sì

La posizione del file di definizione delle specifiche di test nell'artefatto di input. È necessario per il test in modalità personalizzata.

DevicePoolArn

Obbligatorio: sì

L'ARN del pool di dispositivi di Device Farm.

Per ottenere gli ARN del pool di dispositivi disponibili per il progetto, incluso l'ARN per i migliori dispositivi, utilizzate la AWS CLI per immettere il seguente comando:

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

Obbligatorio: sì

Specifica il framework di test supportato per il test. Di seguito è riportato un elenco di valori validi perTestType:

  • APPIUM_JAVA_JUNIT

  • APPIUM_JAVA_TESTNG

  • NODO_APPIUM

  • APPIUM_RUBY

  • APPIUM_PYTHON

  • APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • NODO_WEB APPIUM

  • APPIUM_WEB_RUBY

  • APPIUM_WEB_PYTHON

  • BUILTIN_FUZZ

  • INSTRUMENTATION

  • XCTEST

  • XCTEST_UI

Nota

I seguenti tipi di test non sono supportati dall'azione in CodePipeline:WEB_PERFORMANCE_PROFILE, e. REMOTE_ACCESS_RECORD REMOTE_ACCESS_REPLAY

Per informazioni sui tipi di test di Device Farm, vedere Utilizzo dei tipi di test in AWS Device Farm.

RadioBluetoothEnabled

Obbligatorio: no

Un valore booleano che indica se abilitare il Bluetooth all'inizio del test.

RecordAppPerformanceData

Obbligatorio: no

Un valore booleano che indica se registrare i dati sulle prestazioni del dispositivo come CPU, FPS e prestazioni della memoria durante il test.

RecordVideo

Obbligatorio: no

Un valore booleano che indica se registrare video durante il test.

RadioWifiEnabled

Obbligatorio: no

Un valore booleano che indica se abilitare Wi-Fi all'inizio del test.

RadioNfcEnabled

Obbligatorio: no

Un valore booleano che indica se abilitare l'NFC all'inizio del test.

RadioGpsEnabled

Obbligatorio: no

Un valore booleano che indica se abilitare il GPS all'inizio del test.

Test

Obbligatorio: no

Il nome e il percorso del file di definizione del test nella posizione di origine. Il percorso è relativo alla cartella principale dell'artefatto di input del test.

FuzzEventCount

Obbligatorio: no

Il numero di eventi dell'interfaccia utente da eseguire per il fuzz test, compreso tra 1 e 10.000.

FuzzEventThrottle

Obbligatorio: no

Il numero di millisecondi di attesa del fuzz test prima di eseguire il successivo evento dell'interfaccia utente, compreso tra 1 e 1.000.

FuzzRandomizerSeed

Obbligatorio: no

Un seme per il fuzz test da utilizzare per randomizzare gli eventi dell'interfaccia utente. Se si utilizza lo stesso numero per i fuzz test successivi si ottengono sequenze di eventi identiche.

CustomHostMachineArtifacts

Obbligatorio: no

La posizione sul computer host in cui verranno archiviati gli artefatti personalizzati.

CustomDeviceArtifacts

Obbligatorio: no

La posizione sul dispositivo in cui verranno archiviati gli artefatti personalizzati.

UnmeteredDevicesOnly

Obbligatorio: no

Un valore booleano che indica se utilizzare solo i dispositivi senza limiti durante l'esecuzione dei test in questa fase.

JobTimeoutMinutes

Obbligatorio: no

Il numero di minuti di esecuzione di un test per dispositivo prima che scada il timeout.

Latitudine

Obbligatorio: no

La latitudine del dispositivo espressa in gradi del sistema di coordinate geografiche.

Longitudine

Obbligatorio: no

La longitudine del dispositivo espressa in gradi del sistema di coordinate geografiche.

Input artifact (Artefatti di input)

  • Numero di artefatti: 1

  • Descrizione: set di artefatti da mettere a disposizione dell'azione di test. Device Farm cerca l'applicazione creata e le definizioni di test da utilizzare.

Artefatti di output

  • Numero di artefatti: 0

  • Descrizione: gli artefatti di output non si applicano a questo tipo di azione.

Autorizzazioni per i ruoli di servizio: AWS Device Farm operazione

Quando CodePipeline viene eseguita l'azione, la policy relativa al ruolo del CodePipeline servizio richiede le seguenti autorizzazioni, opportunamente limitate all'ARN della risorsa della pipeline per mantenere l'accesso con il minimo dei privilegi. Ad esempio, aggiungi quanto segue alla tua dichiarazione politica:

{ "Effect": "Allow", "Action": [ "devicefarm:ListProjects", "devicefarm:ListDevicePools", "devicefarm:GetRun", "devicefarm:GetUpload", "devicefarm:CreateUpload", "devicefarm:ScheduleRun" ], "Resource": "resource_ARN" },

Dichiarazione dell'operazione

YAML
Name: Test Actions: - Name: TestDeviceFarm ActionTypeId: null 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 ProjectId: eec4905f-98f8-40aa-9afc-4c1cfEXAMPLE TestType: APPIUM_PYTHON TestSpec: example-spec.yml OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-west-2
JSON
{ "Name": "Test", "Actions": [ { "Name": "TestDeviceFarm", "ActionTypeId": null, "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", "ProjectId": "eec4905f-98f8-40aa-9afc-4c1cfEXAMPLE", "TestType": "APPIUM_PYTHON", "TestSpec": "example-spec.yml" }, "OutputArtifacts": [], "InputArtifacts": [ { "Name": "SourceArtifact" } ], "Region": "us-west-2" },

Le risorse correlate seguenti possono essere utili durante l'utilizzo di questa operazione.