Freigeben über


Vorbereiten von Xamarin.iOS-Apps

Wichtig

Visual Studio App Center wird am 31. März 2025 eingestellt. Sie können Visual Studio App Center zwar weiterhin verwenden, bis es vollständig eingestellt ist, es gibt jedoch mehrere empfohlene Alternativen, zu denen Sie möglicherweise eine Migration in Erwägung ziehen.

Erfahren Sie mehr über Supportzeitpläne und Alternativen.

Dieser Leitfaden enthält Anweisungen zum Vorbereiten von Xamarin.UITests für das Hochladen in App Center Test. Wählen Sie Ihre Plattform aus, um zu beginnen.

Bei Xamarin.iOS-Apps muss der Xamarin Test Cloud Agent mit der IPA-Datei der App verknüpft sein. Der Xamarin Test Cloud Agent ist ein spezieller, eingebetteter HTTP-Server, mit dem Xamarin.UITests mit der iOS-Benutzeroberfläche interagieren kann. Der Test Cloud Agent wird dem iOS-Projekt über NuGet hinzugefügt.

Tipp

Nicht-Xamarin iOS-Apps werden auch von Xamarin.UITest unterstützt, aber anstelle des Xamarin Test Cloud-Agents müssen Calabash verknüpft werden.

Visual Studio für Mac

Klicken Sie für ein iOS-Projekt in Visual Studio für Mac mit der rechten Maustaste auf den Ordner Pakete, und wählen Sie Paket hinzufügen aus. Suchen Sie nach Xamarin Test Cloud Agent, und klicken Sie auf Paket hinzufügen:

Hinzufügen des Xamarin Test Cloud-Agents (macOS)

Visual Studio (Windows)

Wichtig

Xamarin.UITests für iOS-Apps können nicht lokal unter Windows ausgeführt werden. Sie können weiterhin von Windows aus erstellen, kompilieren und in App Center Test hochladen.

Klicken Sie bei einem iOS-Projekt in Visual Studio für Windows mit der rechten Maustaste auf das Projekt, und wählen Sie im Kontextmenü Die Option NuGet-Pakete verwalten aus. Suchen Sie im NuGet-Paket-Manager nach Xamarin Test Cloud Agent , und klicken Sie auf OK , um dieses Paket zu installieren:

Hinzufügen des Xamarin Test Cloud-Agents (windows)

Initialisieren des Xamarin Test Cloud-Agents

Nachdem Sie den Xamarin Test Cloud Agent zum iOS-Projekt hinzugefügt haben, müssen Sie den Xamarin Test Cloud Agent initialisieren, wenn die iOS-App gestartet wird. Bearbeiten Sie die AppDelegate-Klasse , und fügen Sie der -Methode den FinishedLaunching folgenden Codeausschnitt hinzu:

#if ENABLE_TEST_CLOUD
Xamarin.Calabash.Start();
#endif

Warnung

Apple lehnt Ihre App ab, wenn Sie eine App übermitteln, die den Xamarin Test Cloud Agent enthält. Der Xamarin Test Cloud-Agent wird nur für Apps unterstützt, die mit Entwicklungsbereitstellungsprofilen signiert sind. Wenn sie an App Center Test übermittelt werden, werden IPAs nach Möglichkeit automatisch mit einem unserer Entwicklungsbereitstellungsprofile signiert.

Wenn Sie den Initialisierungscode in der ENABLE_TEST_CLOUD bedingten Kompilierungsanweisung umschließen, belässt der Xamarin-Linker den Xamarin Test Cloud Agent in Builds, die das flag ENABLE_TEST_CLOUD verwenden. Normalerweise debuggen Sie Builds, aber keine Releasebuilds . Neue Xamarin.iOS-Apps, die in Visual Studio erstellt wurden, verwenden diesen Ansatz.

Generieren eines Uploadbefehls

Sobald eine Testsuite vorbereitet ist, können Sie eine Testausführung einrichten , um Ihre Tests hochzuladen und auszuführen. Dieser Prozess generiert eine Prototyp-Befehlszeile wie folgt:

appcenter test run uitest --app "MyOrg/MyApp" --devices "MyOrg/MyDeviceSet" --app-path pathToFile.ipa --test-series "main" --locale "en_US" --build-dir pathToUITestBuildDir

Die Befehlszeile erfordert einige Änderungen:

  1. Sie müssen Pfade für die Argumente --app-path & --build-dirangeben.
  2. Möglicherweise müssen Sie das von Ihnen verwendete UITest-Paket angeben, wenn die CLI es nicht automatisch finden kann:--uitest-tools-dir /Users/{your username}/.nuget/packages/xamarin.uitest/{UITest version}/tools