AWS Device Farm - 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

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, consultez Working with Test Types in 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'identifiant du projet Device Farm.

Pour trouver l'identifiant de votre projet, sélectionnez votre projet dans la console Device Farm. Dans le navigateur, copiez l'URL de votre nouveau projet. L'URL contient l'ID de projet. L'ID du projet est la valeur figurant dans l'URL qui suitprojects/. 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 d'application 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. Cela est nécessaire pour le test en 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 meilleurs appareils, utilisez la AWS CLI 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, consultez Working with Test Types in AWS Device Farm.

RadioBluetoothEnabled

Obligatoire : non

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

RecordAppPerformanceData

Obligatoire : non

Valeur booléenne qui indique s'il convient d'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 activer le Wi-Fi au début du test.

RadioNfcEnabled

Obligatoire : non

Valeur booléenne qui indique s'il faut activer le 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

Le nombre d'événements d'interface utilisateur à effectuer par le test de fuzz, compris entre 1 et 10 000.

FuzzEventThrottle

Obligatoire : non

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

FuzzRandomizerSeed

Obligatoire : non

Un point de départ pour le test de fuzz à utiliser pour randomiser les événements de l'interface utilisateur. L'utilisation du même numéro pour les tests de fuzz suivants permet d'obtenir 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 convient d'utiliser uniquement vos appareils non mesurés lors de l'exécution des tests de 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 est 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.

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.