View a markdown version of this page

Migrieren Sie Ihre benutzerdefinierten Testumgebungen auf die neuen iOS-Testhosts - AWS Device Farm

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

Die vollständige Liste der verfügbaren Testhosts und wie Sie einen auswählen, finden Sie unterHosts für benutzerdefinierte Testumgebungen.

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 Beispiel-Testspezifikationsdatei für Ihre gewünschten Testtypen zu beginnen und dann die relevanten Befehle aus Ihrer alten Testspezifikationsdatei in 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.

Tutorial: iOS-Testspezifikationsdateien mit der Konsole migrieren

In diesem Beispiel wird die Device Farm-Konsole verwendet, um eine vorhandene iOS-Gerätetestspezifikation für die Verwendung des neuen Testhosts zu integrieren.

Schritt 1: Erstellen einer neuen Testspezifikationsdatei mit der Konsole

  1. Entscheiden Sie, welchen Testhost Sie verwenden möchten. Eine Liste der verfügbaren iOS-Testhosts und wie Sie einen auswählen, finden Sie unterHosts für benutzerdefinierte Testumgebungen.

  2. Melden Sie sich bei der AWS Device Farm-Konsole an.

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

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

    1. Klicken Sie auf die Option „Projekteinstellungen“ und navigieren Sie zum Tab „Uploads“.

    2. Navigieren Sie zu der Testspezifikationsdatei, mit der Sie an Bord gehen möchten.

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

  5. Gehen Sie zurück zur Projektseite und klicken Sie auf Run erstellen.

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

  7. Klicken Sie unter Verwendung der standardmäßig ausgewählten iOS-Testspezifikation auf die Schaltfläche Testspezifikation erstellen.

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

    1. Stellen Sie ios_test_host den Testhost ein, der Ihren Testanforderungen entspricht. Beispiel:

      ios_test_host: macos_tahoe
    2. Überprüfen Sie die einzelnen phase Testspezifikationen anhand der Kopie Ihrer Testspezifikation, die Sie in einem vorherigen Schritt heruntergeladen haben.

    3. Kopieren Sie Befehle aus den Phasen der alten Testspezifikation in die jeweilige Phase der neuen Testspezifikation und ignorieren Sie dabei Befehle im Zusammenhang mit der Installation oder Auswahl von Java, Python, Ruby Node.js, Appium oder Xcode.

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

  10. Klicken Sie auf 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 Beispiel unter.

Schritt 2: Auswahl der Software (vorinstallierte Software)

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.

Fügen Sie beispielsweise die folgende Zeile hinzu, um JDK 25 in Ihrer Testumgebung zu verwenden:

- devicefarm-cli use java 25

Weitere Informationen zur verfügbaren unterstützten Software finden Sie unter:Unterstützte Software in benutzerdefinierten Testumgebungen.

Schritt 3: Verwenden von Appium und seinen Abhängigkeiten mithilfe der Tools zur Softwareauswahl

Wählen Sie explizit die Appium-Version mit dem aus. devicefarm-cli Auf dem macos_tahoe Testhost ist Appium 3 die Standardversion:

- devicefarm-cli use appium 3 # Selects the version - appium --version # Prints the version

In der ausgewählten Appium-Version devicefarm-cli ist eine kompatible Version des XCUITest-Treibers für iOS vorinstalliert.

Wenn Sie die Standard-Testspezifikation verwenden, wählt Device Farm automatisch WebDriverAgent (WDA) entsprechend Ihrem installierten XCUITest-Treiber aus. Weitere Informationen zur Funktionsweise dieser Auswahl finden Sie unter und. Auswahl einer WebDriverAgent Version für iOS-Tests Umgebungsvariablen für Appium-Tests

Unterschiede zwischen den neuen und älteren Testhosts

Wenn Sie Ihre Testspezifikationsdatei bearbeiten, um den neuen iOS-Testhost zu verwenden, und Ihre Tests vom alten Testhost übertragen, sollten Sie sich der folgenden wichtigen Umgebungsunterschiede bewusst sein:

  • Xcode-Versionen: In der älteren Testhost-Umgebung 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 auf dem 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

  • Auswahl von Softwareversionen: In vielen Fällen haben sich die Standard-Softwareversionen geändert. Wenn Sie Ihre Softwareversion also zuvor nicht explizit auf dem alten Testhost ausgewählt haben, möchten Sie sie jetzt auf dem neuen Testhost mithilfe von devicefarm-cli angeben. In den allermeisten Anwendungsfällen empfehlen wir Kunden, die von ihnen verwendeten Softwareversionen explizit auszuwählen. Wenn Sie eine Softwareversion mit auswählen, haben devicefarm-cli Sie eine vorhersehbare und konsistente Erfahrung damit und erhalten zahlreiche Warnungen, falls 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 wurden 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 aufgeführt sind.

  • Die libimobiledevice Toolsuite wurde zugunsten neuerer Tools von Erstanbietern entfernt, um die aktuellen Tests und Industriestandards von iOS-Geräten nachzuverfolgen. Für iOS 17 und höher können Sie die meisten Befehle migrieren, um ähnliche Xcode-Tools zu verwenden, die als. devicectl Informationen dazu finden Sie auf einem Computerdevicectl, auf xcrun devicectl help 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 sie 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 unterBewährte Methoden für die Ausführung benutzerdefinierter Testumgebungen.

  • Betriebssystemversion und Architektur: Die älteren Testhosts verwendeten je nach dem zugewiesenen Gerät eine Vielzahl von macOS-Versionen und CPU-Architekturen. 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 unterLegacy-iOS-Testhost.

  • Für Appium-Benutzer WebDriverAgent wurde die Methode zur Auswahl von geändert, sodass DEVICEFARM_APPIUM_WDA_DERIVED_DATA_PATH_V anstelle des alten Präfixes ein DEVICEFARM_WDA_DERIVED_DATA_PATH_V Umgebungsvariablenpräfix verwendet wird. Weitere Informationen zur aktualisierten Variablen finden Sie Umgebungsvariablen für Appium-Tests 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 enthielt (über eine Umgebungsvariable). $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 im Rahmen einer Support-Anfrage an das Serviceteam zu wenden, wenn Sie Feedback oder Fragen zu den Unterschieden zwischen den Testhosts aus Softwaresicht haben.