

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.

# Migrieren Sie Ihre benutzerdefinierten Testumgebungen auf die neuen iOS-Testhosts
<a name="ios-host-migration"></a>

 Um bestehende Tests vom Legacy-Host auf den neuen macOS-Testhost zu migrieren, müssen Sie neue Testspezifikationsdateien entwickeln, die auf Ihren bereits vorhandenen basieren. 

 Der empfohlene Ansatz besteht darin, mit der Beispieltestspezifikationsdatei für die gewünschten Testtypen zu beginnen und dann relevante Befehle von Ihrer alten Testspezifikationsdatei auf die neue zu migrieren. Auf diese Weise können Sie neue Funktionen und Optimierungen der Beispieltestspezifikation für den neuen Host nutzen und gleichzeitig Ausschnitte aus Ihrem vorhandenen Code wiederverwenden. 

**Topics**
+ [Tutorial: Migrieren von iOS-Testspezifikationsdateien mit der Konsole](#ios-host-migration-console-tutorial)
+ [Unterschiede zwischen den neuen und den älteren Testhosts](#ios-host-migration-differences)

## Tutorial: Migrieren von iOS-Testspezifikationsdateien mit der Konsole
<a name="ios-host-migration-console-tutorial"></a>

 In diesem Beispiel wird die Device Farm Farm-Konsole verwendet, um eine bestehende iOS-Gerätetestspezifikation zu integrieren, um den neuen Testhost zu verwenden. 

### Schritt 1: Erstellen neuer Testspezifikationsdateien mit der Konsole
<a name="ios-host-migration-console-tutorial-step1"></a>

1. Melden Sie sich bei der [AWS Device Farm Farm-Konsole](https://console.aws.amazon.com/devicefarm) an.

1. Navigieren Sie zum Device Farm Farm-Projekt, das Ihre Automatisierungstests enthält.

1. Laden Sie eine Kopie der vorhandenen Testspezifikation herunter, die Sie verwenden möchten.

   1. Klicken Sie auf die Option „Projekteinstellungen“ und navigieren Sie zur Registerkarte **Uploads**.

   1. Navigieren Sie zu der Testspezifikationsdatei, die Sie verwenden möchten.

   1. Klicken Sie auf die Schaltfläche **Herunterladen**, um eine lokale Kopie dieser Datei zu erstellen.

1. Gehen Sie zurück zur Projektseite und klicken Sie auf **Ausführung erstellen**.

1. Füllen Sie die Optionen im Assistenten so aus, als ob Sie einen neuen Lauf starten würden, halten Sie aber bei der Option **Testspezifikation auswählen** an.

1. Verwenden Sie die standardmäßig ausgewählte iOS-Testspezifikation und klicken Sie auf die Schaltfläche **Testspezifikation erstellen**.

1. Ändern Sie die Testspezifikation, die *standardmäßig* im Texteditor ausgewählt wurde.

   1.  Falls noch nicht vorhanden, ändern Sie die Testspezifikationsdatei, um den neuen Host auszuwählen. Verwenden Sie dazu: 

      ```
      ios_test_host: macos_sequoia
      ```

   1. Überprüfen Sie jede Kopie Ihrer Testspezifikation, die Sie in einem vorherigen Schritt heruntergeladen haben. ` phase`

   1.  Kopiert Befehle aus den Phasen der alten Testspezifikation in die jeweiligen Phasen der neuen Testspezifikation und ignoriert dabei Befehle, die sich auf die Installation oder Auswahl von Java, Python, Node.js, Ruby, Appium oder Xcode beziehen. 

1.  **Geben Sie einen neuen Dateinamen in das Textfeld Speichern unter ein.**

1.  Klicken Sie auf die Schaltfläche **Als neu** speichern, um Ihre Änderungen zu speichern. 

 Ein Beispiel für eine Testspezifikationsdatei, die Sie als Referenz verwenden können, finden Sie im [Beispiele für Testspezifikationen](custom-test-environment-test-spec.md#custom-test-environment-test-spec-example) Beispiel unter. 

### Schritt 2: Auswahl der vorinstallierten Software
<a name="ios-host-migration-console-tutorial-step2"></a>

 Auf dem neuen Testhost werden vorinstallierte Softwareversionen mithilfe eines neuen standardisierten Versionsverwaltungstools namens ausgewählt. `devicefarm-cli` Dieses Tool ist jetzt der empfohlene Ansatz für die Verwendung der verschiedenen Software, die wir auf den Testhosts bereitstellen. 

 Als Beispiel würden Sie die folgende Zeile hinzufügen, um ein anderes JDK 17 in Ihrer Testumgebung zu verwenden: 

```
- devicefarm-cli use java 17
```

 Weitere Informationen zur unterstützten und verfügbaren Software finden Sie unter:[Unterstützte Software in benutzerdefinierten Testumgebungen](custom-test-environments-hosts-software.md). 

### Schritt 3: Verwenden von Appium und seinen Abhängigkeiten über das Softwareauswahltool
<a name="ios-host-migration-console-tutorial-step3"></a>

 Der neue Testhost unterstützt nur Appium 2.x und höher. Bitte wählen Sie explizit die Appium-Version mit dem `devicefarm-cli` aus und entfernen Sie dabei ältere Tools wie. ` avm` Beispiel: 

```
# This line using 'avm' should be removed
# - avm 2.3.1

# And the following lines should be added
- devicefarm-cli use appium 2 # Selects the version
- appium --version            # Prints the version
```

Die mit ausgewählte Appium-Version `devicefarm-cli` ist mit einer kompatiblen Version des XCUITest Treibers für iOS vorinstalliert.

 Darüber hinaus müssen Sie Ihre Testspezifikation aktualisieren, um sie anstelle von zu verwenden` DEVICEFARM_APPIUM_WDA_DERIVED_DATA_PATH_V9`. ` DEVICEFARM_WDA_DERIVED_DATA_PATH` Die neue Umgebungsvariable verweist auf eine vorgefertigte Version von WebDriverAgent 9.x, der neuesten unterstützten Version für Appium 2-Tests.

Weitere Informationen finden Sie unter und. [Auswahl einer WebDriverAgent Version für iOS-Tests](test-types-appium.md#test-types-appium-select-wda) [Umgebungsvariablen für Appium-Tests](custom-test-environment-variables.md#custom-test-environment-variables-appium)

## Unterschiede zwischen den neuen und den älteren Testhosts
<a name="ios-host-migration-differences"></a>

 Wenn Sie Ihre Testspezifikationsdatei bearbeiten, um den neuen iOS-Testhost zu verwenden, und Ihre Tests vom alten Testhost umstellen, sollten Sie sich der folgenden wichtigen Umgebungsunterschiede bewusst sein: 
+  **Xcode-Versionen:** In der Legacy-Testhostumgebung basierte die verfügbare Xcode-Version auf der iOS-Version des zum Testen verwendeten Geräts. Beispielsweise verwendeten Tests auf iOS 18-Geräten Xcode 16 im Legacy-Host, wohingegen Tests auf iOS 17 Xcode 15 verwendeten. In der neuen Host-Umgebung können alle Geräte auf dieselben Versionen von Xcode zugreifen, was eine konsistente Umgebung für Tests auf Geräten mit unterschiedlichen Versionen ermöglicht. Eine Liste der derzeit verfügbaren Xcode-Versionen finden Sie unter. [Unterstützte Software](custom-test-environments-hosts-software.md) 
+  **Softwareversionen auswählen:** In vielen Fällen haben sich die Standard-Softwareversionen geändert. Wenn Sie also Ihre Softwareversion auf dem älteren Testhost nicht explizit ausgewählt haben, möchten Sie sie jetzt vielleicht auf dem neuen Testhost mit [`devicefarm-cli`](custom-test-environments-hosts-software-cli.md)angeben. In den allermeisten Anwendungsfällen empfehlen wir Kunden, explizit die Softwareversionen auszuwählen, die sie verwenden. Wenn Sie eine Softwareversion mit auswählen, haben `devicefarm-cli` Sie eine vorhersehbare und konsistente Erfahrung damit und erhalten zahlreiche Warnungen, wenn Device Farm plant, diese Version vom Testhost zu entfernen. 

   Darüber hinaus `rvm` wurden Tools zur Softwareauswahl wie `nvm` `pyenv`` avm`,, und zugunsten des neuen ` devicefarm-cli` Softwareauswahlsystems entfernt. 
+  **Verfügbare Softwareversionen:** Viele Versionen zuvor vorinstallierter Software wurden entfernt und viele neue Versionen hinzugefügt. Stellen Sie daher sicher, dass Sie bei der `devicefarm-cli` Auswahl Ihrer Softwareversionen Versionen auswählen, die in der [Liste der unterstützten Versionen enthalten](custom-test-environments-hosts-software.md) sind.
+  **Die `libimobiledevice` Toolsuite wurde zugunsten neuerer Tools bzw. Tools von Erstanbietern entfernt**, um aktuelle iOS-Gerätetests und Industriestandards nachzuverfolgen. Für iOS 17 und höher können Sie die meisten Befehle migrieren, um ähnliche Xcode-Tools zu verwenden, genannt. `devicectl` Informationen dazu finden Sie unter: Sie können das Programm `xcrun devicectl help` von einem Computer aus ausführen`devicectl`, auf dem Xcode installiert ist.
+  **Dateipfade, die in Ihrer alten Host-Testspezifikationsdatei als absolute Pfade fest codiert sind**, funktionieren auf dem neuen Testhost höchstwahrscheinlich nicht wie erwartet und werden im Allgemeinen nicht für die Verwendung von Testspezifikationsdateien empfohlen. Wir empfehlen, relative Pfade und Umgebungsvariablen für den gesamten Code der Testspezifikationsdatei zu verwenden. Weitere Informationen finden Sie im Thema unter[Bewährte Methoden für die Ausführung benutzerdefinierter Testumgebungen](custom-test-environments-best-practices.md). 
+  **Betriebssystemversion und Architektur:** Die älteren Testhosts verwendeten eine Vielzahl von macOS-Versionen und CPU-Architekturen, die auf dem zugewiesenen Gerät basierten. Daher stellen Benutzer möglicherweise einige Unterschiede in den verfügbaren Systembibliotheken fest, die in der Umgebung verfügbar sind. Weitere Informationen zur vorherigen Host-Betriebssystemversion finden Sie unter[Legacy-iOS-Testhost](custom-test-environments-hosts-ios.md#legacy-ios-host). 
+  **Für Appium-Benutzer** WebDriverAgent wurde die Art der Auswahl von dahingehend geändert, dass ` DEVICEFARM_APPIUM_WDA_DERIVED_DATA_PATH_V` anstelle des alten ` DEVICEFARM_WDA_DERIVED_DATA_PATH_V` Präfixes ein Präfix für die Verwendung einer Umgebungsvariablen verwendet wird. Weitere Informationen zur aktualisierten Variablen finden Sie [Umgebungsvariablen für Appium-Tests](custom-test-environment-variables.md#custom-test-environment-variables-appium) unter.
+  **Für Appium Java-Benutzer** enthält der neue Testhost keine vorinstallierten JAR-Dateien in seinem Klassenpfad, wohingegen der vorherige Host eine für das TestNG-Framework (über eine Umgebungsvariable) enthielt. `$DEVICEFARM_TESTNG_JAR` Wir empfehlen Kunden, die erforderlichen JAR-Dateien für ihre Testframeworks in ihr Testpaket zu packen und Instanzen der `$DEVICEFARM_TESTNG_JAR` Variablen aus ihren Testspezifikationsdateien zu entfernen.

 Wir empfehlen, sich über einen Support-Fall an das Serviceteam zu wenden, wenn Sie Feedback oder Fragen zu den Unterschieden zwischen den Testhosts aus Sicht der Software haben. 