View a markdown version of this page

AWS Device Farm Referenz zur Testaktion - AWS CodePipeline

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS Device Farm Referenz zur Testaktion

In Ihrer Pipeline können Sie eine Testaktion konfigurieren, mit der AWS Device Farm Ihre Anwendung auf Geräten ausgeführt und getestet wird. Device Farm verwendet Testpools von Geräten und Testframeworks, um Anwendungen auf bestimmten Geräten zu testen. Informationen zu den Typen von Testframeworks, die von der Device Farm-Aktion unterstützt werden, finden Sie unter Arbeiten mit Testtypen in AWS Device Farm.

Aktionstyp

  • Kategorie: Test

  • Eigentümer: AWS

  • Anbieter: DeviceFarm

  • Version: 1

Konfigurationsparameter

AppType

Erforderlich: Ja

Das Betriebssystem und die Art der Anwendung, die Sie testen. Im Folgenden finden Sie eine Liste gültiger Werte:

  • iOS

  • Android

  • Web

ProjectId

Erforderlich: Ja

Die Device Farm-Projekt-ID.

Um Ihre Projekt-ID zu finden, wählen Sie in der Device Farm-Konsole Ihr Projekt aus. Kopieren Sie im Browser die URL Ihres neuen Projekts. Die URL enthält die Projekt-ID. Die Projekt-ID ist der Wert in der nachfolgenden URLprojects/. Im folgenden Beispiel lautet die Projekt-IDeec4905f-98f8-40aa-9afc-4c1cfexample.

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

Erforderlich: Ja

Der Name und der Speicherort der Anwendungsdatei in Ihrem Eingabeartefakt. Beispiel: s3-ios-test-1.ipa

TestSpec

Befristet: Ja

Der Speicherort der Testspezifikationsdatei in Ihrem Eingabeartefakt. Dies ist für den Test im benutzerdefinierten Modus erforderlich.

DevicePoolArn

Erforderlich: Ja

Der ARN des Device Farm-Gerätepools.

Um die verfügbaren Gerätepool-ARNs für das Projekt abzurufen, einschließlich des ARN für Top-Geräte, verwenden Sie die AWS CLI, um den folgenden Befehl einzugeben:

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

Erforderlich: Ja

Gibt das unterstützte Testframework für Ihren Test an. Im Folgenden finden Sie eine Liste gültiger Werte fürTestType:

  • APPIUM_JAVA_JUNIT

  • APPIUM_JAVA_TESTING

  • APPIUM_NODE

  • APPIUM_RUBY

  • APPIUM_PYTHON

  • APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTING

  • APPIUM_WEB_NODE

  • APPIUM_WEB_RUBY

  • APPIUM_WEB_PYTHON

  • EINGEBAUTET_FUZZ

  • INSTRUMENTATION

  • XCTEST

  • XCTEST_UI

Anmerkung

Die folgenden Testtypen werden von der Aktion in CodePipeline:WEB_PERFORMANCE_PROFILE, und nicht unterstützt. REMOTE_ACCESS_RECORD REMOTE_ACCESS_REPLAY

Informationen zu Device Farm-Testtypen finden Sie unter Arbeiten mit Testtypen in AWS Device Farm.

RadioBluetoothEnabled

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob Bluetooth zu Beginn des Tests aktiviert werden soll.

RecordAppPerformanceData

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob während des Tests Leistungsdaten des Geräts wie CPU, FPS und Speicherleistung aufgezeichnet werden sollen.

RecordVideo

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob während des Tests ein Video aufgenommen werden soll.

RadioWifiEnabled

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob zu Wi-Fi Beginn des Tests aktiviert werden soll.

RadioNfcEnabled

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob NFC zu Beginn des Tests aktiviert werden soll.

RadioGpsEnabled

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob GPS zu Beginn des Tests aktiviert werden soll.

Test

Erforderlich: Nein

Der Name und der Pfad der Testspezifikationsdatei an Ihrem Quellspeicherort. Der Pfad ist relativ zum Stamm des Eingabeartefakts für Ihren Test.

FuzzEventCount

Erforderlich: Nein

Die Anzahl der Benutzeroberflächenereignisse, die der Fuzz-Test ausführen soll, zwischen 1 und 10.000.

FuzzEventThrottle

Erforderlich: Nein

Die Anzahl der Millisekunden, die der Fuzz-Test warten muss, bevor das nächste Benutzeroberflächenereignis ausgeführt wird. Der Wert liegt zwischen 1 und 1.000.

FuzzRandomizerSeed

Erforderlich: Nein

Ein Startwert für den Fuzz-Test, der für die Randomisierung von Benutzeroberflächenereignissen verwendet wird. Die Verwendung derselben Zahl für nachfolgende Fuzz-Tests führt zu identischen Ereignissequenzen.

CustomHostMachineArtifacts

Erforderlich: Nein

Der Speicherort auf dem Host-Computer, an dem benutzerdefinierte Artefakte gespeichert werden.

CustomDeviceArtifacts

Erforderlich: Nein

Der Ort auf dem Gerät, an dem benutzerdefinierte Artefakte gespeichert werden.

UnmeteredDevicesOnly

Erforderlich: Nein

Ein boolescher Wert, der angibt, ob Sie bei der Durchführung von Tests in diesem Schritt nur Ihre Geräte ohne Zähler verwenden möchten.

JobTimeoutMinutes

Erforderlich: Nein

Die Anzahl der Minuten, die ein Testlauf pro Gerät ausgeführt wird, bevor ein Timeout eintritt.

Breitengrad

Erforderlich: Nein

Der Breitengrad des Geräts, ausgedrückt in Grad im geographischen Koordinatensystem.

Längengrad

Erforderlich: Nein

Der Längengrad des Geräts, ausgedrückt in Grad des geographischen Koordinatensystems.

Input artifacts (Eingabeartefakte)

  • Anzahl der Artefakte: 1

  • Beschreibung: Der Satz von Artefakten, der für die Testaktion zur Verfügung gestellt werden soll. Device Farm sucht nach den erstellten Anwendungs- und Testdefinitionen, die verwendet werden sollen.

Ausgabeartefakte

  • Anzahl der Artefakte: 0

  • Beschreibung: Ausgabeartefakte gelten für diesen Aktionstyp nicht.

Berechtigungen für Servicerollen: AWS Device Farm action

Wenn die Aktion CodePipeline ausgeführt wird, erfordert die CodePipeline Servicerollenrichtlinie die folgenden Berechtigungen, die entsprechend auf den ARN der Pipeline-Ressource beschränkt sind, um den Zugriff mit den geringsten Rechten aufrechtzuerhalten. Fügen Sie Ihrer Richtlinienerklärung beispielsweise Folgendes hinzu:

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

Aktionsdeklaration

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

Die folgenden verwandten Ressourcen bieten Ihnen nützliche Informationen für die Arbeit mit dieser Aktion.