View a markdown version of this page

AWS Device Farm référence de l'action de test - AWS CodePipeline

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

AWS Device Farm référence de l'action de test

Dans votre pipeline, vous pouvez configurer une action de test qui permet d' AWS Device Farm exécuter et de tester votre application sur des appareils. Device Farm utilise des pools de tests d'appareils et des frameworks de test pour tester des applications sur des appareils spécifiques. Pour plus d'informations sur les types de frameworks de test pris en charge par l'action Device Farm, voir Utilisation des types de test dans AWS Device Farm.

Type d'action

  • Catégorie : Test

  • Propriétaire : AWS

  • Fournisseur : DeviceFarm

  • Version : 1

Paramètres de configuration

AppType

Obligatoire : oui

Le système d'exploitation et le type d'application que vous testez. Voici une liste de valeurs valides :

  • iOS

  • Android

  • Web

ProjectId

Obligatoire : oui

L'ID du projet Device Farm.

Pour trouver l'ID de votre projet, dans la console Device Farm, choisissez votre projet. Dans le navigateur, copiez l'URL de votre nouveau projet. L'URL contient l'ID de projet. L'ID du projet est la valeur de l'URL suivanteprojects/. Dans l'exemple suivant, l'ID du projet esteec4905f-98f8-40aa-9afc-4c1cfexample.

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

Obligatoire : oui

Le nom et l'emplacement du fichier de demande dans votre artefact d'entrée. Par exemple : s3-ios-test-1.ipa

TestSpec

Conditionnel : Oui

Emplacement du fichier de définition des spécifications de test dans votre artefact d'entrée. Ceci est requis pour le test du mode personnalisé.

DevicePoolArn

Obligatoire : oui

L'ARN du pool d'appareils Device Farm.

Pour obtenir les ARN du pool de périphériques disponibles pour le projet, y compris l'ARN des principaux appareils, utilisez l' AWS interface de ligne de commande pour entrer la commande suivante :

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

Obligatoire : oui

Spécifie le framework de test pris en charge pour votre test. Voici une liste de valeurs valides pour TestType :

  • APPIUM_JAVA_JUNIT

  • APPIUM_JAVA_TESTNG

  • APPIUM_NODE

  • APPIUM RUBY

  • APPIUM PYTHON

  • APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • APPIUM_WEB_NODE

  • APPIUM_WEB_RUBY

  • APPIUM_WEB_PYTHON

  • FUZZ INTÉGRÉ

  • INSTRUMENTATION

  • XCTEST

  • XCTEST_UI

Note

Les types de test suivants ne sont pas pris en charge par l'action dans CodePipeline : WEB_PERFORMANCE_PROFILEREMOTE_ACCESS_RECORD, etREMOTE_ACCESS_REPLAY.

Pour plus d'informations sur les types de tests Device Farm, voir Utilisation des types de test dans AWS Device Farm.

RadioBluetoothEnabled

Obligatoire : non

Valeur booléenne qui indique s'il faut activer le Bluetooth au début du test.

RecordAppPerformanceData

Obligatoire : non

Valeur booléenne qui indique s'il faut enregistrer les données de performance de l'appareil, telles que les performances du processeur, des images par seconde et de la mémoire pendant le test.

RecordVideo

Obligatoire : non

Valeur booléenne qui indique s'il faut enregistrer une vidéo pendant le test.

RadioWifiEnabled

Obligatoire : non

Valeur booléenne qui indique s'il faut l'activer Wi-Fi au début du test.

RadioNfcEnabled

Obligatoire : non

Valeur booléenne qui indique s'il faut activer la technologie NFC au début du test.

RadioGpsEnabled

Obligatoire : non

Valeur booléenne qui indique s'il faut activer le GPS au début du test.

test

Obligatoire : non

Le nom et le chemin du fichier de définition de test dans votre emplacement source. Ce chemin dépend de la racine de l'artefact d'entrée de votre test.

FuzzEventCount

Obligatoire : non

Nombre d'événements d'interface utilisateur à exécuter par le test Fuzz, compris entre 1 et 10 000.

FuzzEventThrottle

Obligatoire : non

Le nombre de millisecondes que le test fuzz doit attendre avant d'effectuer le prochain événement d'interface utilisateur, compris entre 1 et 1 000.

FuzzRandomizerSeed

Obligatoire : non

Une graine pour le test Fuzz à utiliser pour randomiser les événements de l'interface utilisateur. L'utilisation du même numéro pour les tests de fuzz ultérieurs donne des séquences d'événements identiques.

CustomHostMachineArtifacts

Obligatoire : non

Emplacement sur la machine hôte où les artefacts personnalisés seront stockés.

CustomDeviceArtifacts

Obligatoire : non

Emplacement sur l'appareil où les artefacts personnalisés seront stockés.

UnmeteredDevicesOnly

Obligatoire : non

Valeur booléenne qui indique s'il faut utiliser uniquement vos appareils illimités lors de l'exécution des tests à cette étape.

JobTimeoutMinutes

Obligatoire : non

Le nombre de minutes pendant lesquelles un test sera exécuté par appareil avant son expiration.

Latitude

Obligatoire : non

La latitude de l'appareil exprimée en degrés du système de coordonnées géographiques.

Longitude

Obligatoire : non

La longitude de l'appareil exprimée en degrés du système de coordonnées géographiques.

Artefacts d'entrée

  • Nombre d'objets : 1

  • Description : ensemble d'artefacts à mettre à disposition pour l'action de test. Device Farm recherche l'application intégrée et les définitions de test à utiliser.

Artefacts de sortie

  • Nombre d'artefacts : 0

  • Description : Les artefacts de sortie ne s'appliquent pas à ce type d'action.

Autorisations relatives aux rôles de service : AWS Device Farm action

Lors de l' CodePipeline exécution de l'action, la politique de rôle de CodePipeline service nécessite les autorisations suivantes, dont la portée est appropriée jusqu'à l'ARN de la ressource du pipeline afin de conserver l'accès avec le moins de privilèges possible. Par exemple, ajoutez ce qui suit à votre déclaration de politique :

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

Déclaration d'action

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" },

Les ressources connexes suivantes peuvent s'avérer utiles dans le cadre de l'utilisation de cette action.