

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
<a name="action-reference-DeviceFarm"></a>

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 Test-Frameworks, um Anwendungen auf bestimmten Geräten zu testen. Informationen zu den Typen von Testframeworks, die von der Aktion Device Farm unterstützt werden, finden Sie unter [Arbeiten mit Testtypen in AWS Device Farm](https://docs.aws.amazon.com/devicefarm/latest/developerguide/test-types.html).

**Topics**
+ [Aktionstyp](#action-reference-DeviceFarm-type)
+ [Konfigurationsparameter](#action-reference-DeviceFarm-config)
+ [Input artifacts (Eingabeartefakte)](#action-reference-DeviceFarm-input)
+ [Ausgabeartefakte](#action-reference-DeviceFarm-output)
+ [Berechtigungen für Servicerollen: AWS Device Farm Aktion](#edit-role-devicefarm)
+ [Aktionsdeklaration](#action-reference-DeviceFarm-example)
+ [Weitere Informationen finden Sie auch unter](#action-reference-DeviceFarm-links)

## Aktionstyp
<a name="action-reference-DeviceFarm-type"></a>
+ Kategorie: `Test`
+ Eigentümer: `AWS`
+ Anbieter: `DeviceFarm`
+ Version: `1`

## Konfigurationsparameter
<a name="action-reference-DeviceFarm-config"></a>

**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 Farm-Projekt-ID.   
Um Ihre Projekt-ID zu finden, wählen Sie in der Device Farm 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 URL danach`projects/`. Im folgenden Beispiel lautet die Projekt-ID`eec4905f-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**  
Bedingt: Ja  
Der Speicherort der Definitionsdatei der Testspezifikation in Ihrem Eingabeartefakt. Dies ist für den Test im benutzerdefinierten Modus erforderlich.

**DevicePoolArn**  
Erforderlich: Ja  
Der Gerätefarm-Gerätepool-ARN.   
Geben Sie mit der AWS CLI den folgenden Befehl ein, um den verfügbaren Gerätepool ARNs für das Projekt abzurufen, einschließlich des ARN für Top-Geräte:   

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

**TestType**  
Erforderlich: Ja  
Gibt das unterstützte Test-Framework für Ihren Test an. Im Folgenden finden Sie eine Liste gültiger Werte für`TestType`:  
+ **APPIUM\$1JAVA\$1JUNIT**
+ **APPIUM\$1JAVA\$1TESTNG**
+ **APPIUM\$1KNOTEN**
+ **APPIUM\$1RUBY**
+ **APPIUM\$1PYTHON**
+ **APPIUM\$1WEB\$1JAVA\$1JUNIT**
+ **APPIUM\$1WEB\$1JAVA\$1TESTNG**
+ **APPIUM\$1WEB\$1NODE**
+ **APPIUM\$1WEB\$1RUBY**
+ **APPIUM\$1WEB\$1PYTHON**
+ **EINGEBAUTETER\$1FUZZ**
+ **INSTRUMENTATION**
+ **XCTEST**
+ **XCTEST\$1UI**
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](https://docs.aws.amazon.com/devicefarm/latest/developerguide/test-types.html).

**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 Geräteleistungsdaten wie CPU-, FPS- und Speicherleistung aufgezeichnet werden sollen.

**RecordVideo**  
Erforderlich: Nein  
Ein boolescher Wert, der angibt, ob während des Tests Videos aufgenommen werden sollen.

**RadioWifiEnabled**  
Erforderlich: Nein  
Ein boolescher Wert, der angibt, ob Wi-Fi zu 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 durchfü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, zwischen 1 und 1.000.

**FuzzRandomizerSeed**  
Erforderlich: Nein  
Ein Startwert für den Fuzz-Test, der für die Randomisierung von Benutzeroberflächenereignissen verwendet werden soll. 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 Ausfü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 das Timeout überschritten wird.

**Breitengrad**  
Erforderlich: Nein  
Der Breitengrad des Geräts, ausgedrückt in Grad des geographischen Koordinatensystems.

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

## Input artifacts (Eingabeartefakte)
<a name="action-reference-DeviceFarm-input"></a>
+ **Anzahl der Artefakte:** `1`
+ **Beschreibung:** Die Gruppe von Artefakten, die für die Testaktion verfügbar gemacht werden sollen. Device Farm sucht nach der erstellten Anwendung und den zu verwendenden Testdefinitionen.

## Ausgabeartefakte
<a name="action-reference-DeviceFarm-output"></a>
+ **Anzahl der Artefakte:** `0` 
+ **Beschreibung:** Ausgabeartefakte gelten nicht für diesen Aktionstyp.

## Berechtigungen für Servicerollen: AWS Device Farm Aktion
<a name="edit-role-devicefarm"></a>

Wenn die Aktion CodePipeline ausgeführt wird, erfordert die CodePipeline Dienstrollenrichtlinie 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
<a name="action-reference-DeviceFarm-example"></a>

------
#### [ 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"
},
```

------

## Weitere Informationen finden Sie auch unter
<a name="action-reference-DeviceFarm-links"></a>

Die folgenden verwandten Ressourcen bieten Ihnen nützliche Informationen für die Arbeit mit dieser Aktion.
+ [Arbeiten mit Testtypen in Device Farm](https://docs.aws.amazon.com/devicefarm/latest/developerguide/test-types.html) — Dieses Referenzkapitel im *Device Farm Developer Guide* enthält eine genauere Beschreibung der von Device Farm unterstützten Test-Frameworks für Android, iOS und Webanwendungen.
+ [Aktionen in Device Farm](https://docs.aws.amazon.com/devicefarm/latest/APIReference/Welcome.html) — Die API-Aufrufe und Parameter in der *Device Farm API-Referenz* können Ihnen bei der Arbeit mit Device Farm Farm-Projekten helfen.
+ [Tutorial: Erstellen Sie eine Pipeline, die Ihre Android-App erstellt und testet mit AWS Device Farm](tutorials-codebuild-devicefarm.md)— Dieses Tutorial enthält eine Beispieldatei mit einer Build-Spezifikationsdatei und eine Beispielanwendung zum Erstellen einer Pipeline mit einer GitHub Quelle, die eine Android-App mit einer Device Farm erstellt CodeBuild und testet.
+ [Tutorial: Erstellen Sie eine Pipeline, die Ihre iOS-App testet mit AWS Device Farm](tutorials-codebuild-devicefarm-S3.md)— Dieses Tutorial enthält eine Beispielanwendung zum Erstellen einer Pipeline mit einer Amazon S3 S3-Quelle, die eine erstellte iOS-App mit Device Farm testet.