Поделиться через


Подготовка приложений Xamarin.iOS

Важно!

Прекращение поддержки Центра приложений Visual Studio запланировано на 31 марта 2025 г. Хотя вы можете продолжать использовать Центр приложений Visual Studio, пока он не будет полностью выведен из эксплуатации, существует несколько рекомендуемых вариантов, на которые вы можете рассмотреть возможность миграции.

Узнайте больше о сроках поддержки и альтернативных вариантах.

В этом руководстве содержатся инструкции по подготовке Xamarin.UITests к отправке в тест Центра приложений. Выберите платформу для начала.

Приложения Xamarin.iOS должны иметь Xamarin Test Cloud Agent, связанный с IPA-файлом приложения. Xamarin Test Cloud Agent — это специальный встроенный HTTP-сервер, который позволяет Xamarin.UITests взаимодействовать с пользовательским интерфейсом iOS. Тестовый облачный агент добавляется в проект iOS с помощью NuGet.

Совет

Приложения, отличные от Xamarin iOS, также поддерживаются Xamarin.UITest, но вместо Xamarin Test Cloud Agent требуется связывание Calabash.

Visual Studio для Mac

Для проекта iOS в Visual Studio для Mac щелкните правой кнопкой мыши папку Пакеты и выберите Добавить пакет. Найдите Xamarin Test Cloud Agent и щелкните Добавить пакет:

Добавление Xamarin Test Cloud Agent (macOS)

Visual Studio (Windows)

Важно!

Xamarin.UITests для приложений iOS нельзя выполнять локально в Windows. Вы по-прежнему можете создавать, компилировать и отправлять в тест Центра приложений из Windows.

Для проекта iOS в Visual Studio для Windows щелкните правой кнопкой мыши проект и выберите в контекстном меню пункт Управление пакетами NuGet . В диспетчере пакетов NuGet найдите Xamarin Test Cloud Agent и нажмите кнопку ОК , чтобы установить этот пакет:

Добавление агента Xamarin Test Cloud Agent (windows)

Инициализация Xamarin Test Cloud Agent

После добавления Xamarin Test Cloud Agent в проект iOS необходимо инициализировать Xamarin Test Cloud Agent при запуске приложения iOS. Измените класс AppDelegate и добавьте следующий фрагмент кода в FinishedLaunching метод :

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

Предупреждение

Apple отклонит ваше приложение, если вы отправите приложение, включающее Xamarin Test Cloud Agent. Xamarin Test Cloud Agent поддерживается только для приложений, подписанных с помощью профилей подготовки разработки. При отправке в Центр приложений test, IPA автоматически повторно подписываются с помощью одного из наших профилей подготовки к разработке, если это возможно.

Если заключить код инициализации в оператор условной компиляции ENABLE_TEST_CLOUD , компоновщик Xamarin оставит Xamarin Test Cloud Agent в сборках, использующих флаг ENABLE_TEST_CLOUD . Обычно отладка сборок, но не сборок выпуска . Этот подход используется в новых приложениях Xamarin.iOS, созданных в Visual Studio.

Создание команды отправки

После подготовки набора тестов можно настроить тестовый запуск для отправки и выполнения тестов. Этот процесс создаст командную строку прототипа следующим образом:

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

Командная строка требует некоторых изменений:

  1. Необходимо указать пути для аргументов --app-path & .--build-dir
  2. Возможно, потребуется указать пакет UITest, который вы используете, если интерфейс командной строки не может найти его автоматически:--uitest-tools-dir /Users/{your username}/.nuget/packages/xamarin.uitest/{UITest version}/tools