Вот что я сделал, чтобы заставить его работать.Не знаю, правильно это или нет, но эй, это работает!
Xamarin.UITest
Если вы не выполните следующий шаг, вы будете запускать свои тесты локально и ничегопроизойдет, они просто сразу выйдут.
Сначала зайдите в Инструменты> Параметры> Тест> Общие> Активное решение, затем снимите флажок For improved performance, only use test adapters in test assembly folder or as specified in runsettings file
public class AppInitializer
{
public static IApp StartApp(Platform platform)
{
if (platform == Platform.Android)
{
return ConfigureApp.Android
// You may need to adjust the following relative path based on where you created your UITest project
.ApkFile(@"..\..\..\<AppName>\<AppName>.Android\bin\Release\<App Package Name>.apk")
// Uncomment if you are running locally and you want VS to launch/install app
//.PreferIdeSettings()
.StartApp();
}
return ConfigureApp.iOS.StartApp();
}
}
Выполнитьне добавляйте ссылки на ваши проекты Android и iOS, как говорят MS docs.Это приведет вас к часам бесполезного устранения неполадок
Разверните ваш агент в окне разработки.Следуйте этим инструкциям: https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/v2-windows?view=azure-devops
Конфигурация TFS 2018
- В TFS щелкните в хранилище вашего проекта
- Нажмите «Построить и выпустить»
- Вверху вверху щелкните правой кнопкой мыши «+ Новый»
- Нажмите «Продолжить»
- Прокрутите вниз и нажмите «Xamarin.Android»
- , на следующем экране установите для очереди агента значениевсе, что вы создали, вероятно, по умолчанию
Список моих задач по сборке
- Nuget Tool Installer
- .NET Core
- Nuget
- Xamarin.Android
- MSBuild
- Подписание Android
- Узел Установщик инструментов
- Nuget
- Тест Центра приложений
Здесь подробно описаны мои шаги по сборке
Установщик инструментов Nuget
- Использование Nuget
version of nuget to install
:4.9.3
(это то, что я заметил, что мой VS использовал) - все остальные значения по умолчанию
.NET Core
- команда:
restore
- путь к проектам:
**/*.csproj
- все остальные значения по умолчанию
Nuget
- Команда:
custom
- Команда и аргументы:
restore -MsbuildPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin"
- Все остальные значения по умолчанию
Xamarin.Android
- Проект:
**/*Droid*.csproj
- Цель: (пусто)
- Выходной каталог:
$(build.binariesdirectory)\$(BuildConfiguration)
- Конфигурация:
$(BuildConfiguration)
- MSBuild: включить
Specify Location
- Местоположение MSBuild:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin
- Опции JDK, JDK 8 x64
- все остальные значения по умолчанию
MSBuild
- Проект: (подходит для вашего самого подходящего проекта):
**/*UITest*.csproj
- MSBuildверсия: Последняя
- Платформа: (пусто)
- Конфигурация:
$(BuildConfiguration)
- MSBuild Аргументы:
/p:OutputPath="$(build.binariesdirectory)\$(BuildConfiguration)\test-assembly"
- все остальные значения по умолчанию
Подписание Android
- Файлы APK:
$(build.binariesdirectory)\$(BuildConfiguration)\*.apk
- Установите флажок для APK и введите свою информацию
- Аргументы Jarsigner:
-verbose -sigalg MD5withRSA -digestalg SHA1
- Проверьте для Zipalign
- Расположение Zipalign: (пусто)
- все остальные значения по умолчанию
Node Tool Installer
- Версия спецификации: (выберите любую версию, которая у вас уже есть в вашей системе)
10.11.0
- все остальные значения по умолчанию
Примечание. Перед следующим шагом создайте новую переменную с именем XamarinUITestVer и установите для нее любое значение, которое вы хотите использовать для пакета Nuget Xamarin.UITest, который вы хотите установить.В моем случае значение, которое я установил, было: 2.2.7
Nuget
- Команда:
custom
- Команда и аргументы (см. Примечание выше):
install Xamarin.UITest -Version $(XamarinUITestVer) -OutputDirectory "$(Agent.BuildDirectory)\Nuget"
- все остальные значения по умолчанию
Тест Центра приложений
- Путь к файлу двоичного приложения:
$(build.binariesdirectory)\$(BuildConfiguration)\*.apk
- АртефактыКаталог:
$(Build.ArtifactStagingDirectory)\AppCenterTest
- Проверка: «Подготовка тестов»
- Структура тестирования:
Xamarin UI Test
- Сборка каталога:
$(build.binariesdirectory)\$(BuildConfiguration)\test-assembly
- Файл хранилища:(пусто)
- Пароль хранилища: (пусто)
- Псевдоним ключа: (пусто)
- Пароль ключа: (пусто)
- Каталог инструментов тестирования:
$(Agent.BuildDirectory)\Nuget\Xamarin.UITest.$(XamarinUITestVer)\tools\
- Информация о подписи: (пусто)
- Дополнительные параметры: (пусто)
- Проверка:
Run Tests
- Метод аутентификации:
App Center Connection
- Подключение App Center: (создать новое подключение)
- App Slug: получите это, «почти» создав тест в AppCenter.В приложении в AppCenter создайте
New Test Run
, выберите устройства, выберите Next
, выберите Xamarin.UITest
и нажмите Next
.Ниже вы увидите строку --app
, и это то, что вы используете для этого поля. - Устройства: получите это, "почти" создав тест в AppCenter.В приложении в AppCenter создайте
New Test Run
, выберите устройства, выберите Next
, выберите Xamarin.UITest
и нажмите Next
.Ниже вы увидите строку --devices
, и это то, что вы используете для этого поля. - все остальные значения по умолчанию