Не удается запустить тесты пользовательского интерфейса Xamarin в облаке для устройств Android 6.0

#android #ruby #xamarin #xamarin-test-cloud

#Android #ruby #xamarin #xamarin-test-cloud

Вопрос:

В моем проекте Xamarin у меня есть тесты пользовательского интерфейса, которые работают на всех моих локальных устройствах (также с Android 4.0, 5.0 и 6.0), но, к сожалению, когда я запускаю их в тестовом облаке Xamarin, они всегда терпят неудачу только для версии Android 6.0.

Это ошибка:

1) Ошибка установки: приложение.UITests.Droid.Тесты.BuildTest (Android).
Настройка Check_Build: Система.Исключение: ошибка установки приложения с выводом: /Volumes/Data/xamarin/pipeline/versions/7ddfc8e043c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:751: в connect': Object#timeout is deprecated, use Timeout.timeout instead.
/Volumes/Data/xamarin/pipeline/versions/7ddfc8e043c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:613:in
запросе’: Object#timeout устарел, вместо этого используйте Timeout.timeout. /Volumes/Data/xamarin/pipeline/versions/7ddfc84322c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:875: в parse_header': Object#timeout is deprecated, use Timeout.timeout
instead.
/Volumes/Data/xamarin/pipeline/versions/7ddfc8e0022c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:986:in
read_body_chunked’: Тайм-аут объекта# устарел, вместо этого используйте Timeout.timeout. Сбой. Ожидаемое имя пакета: XXX. Вывод пакетов Adb: /Volumes/Data/xamarin/pipeline/versions/7ddfc8e0342c82182471a14f3136c778635e1620/adt/sdk/platform-tools/adb:402 : предупреждение: уже инициализированная константа ARGV /Volumes/Data/xamarin/pipeline/versions/7ddfc343c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:751:в connect': Object#timeout is deprecated, use Timeout.timeout instead.
/Volumes/Data/xamarin/pipeline/versions/7ddfc43022c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:613:in
запросе ‘: Object#timeout устарел, вместо этого используйте Timeout.timeout . /Volumes/Data/xamarin/pipeline/versions/7ddfc84322c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:875:в parse_header': Object#timeout is deprecated, use Timeout.timeout
instead.
/Volumes/Data/xamarin/pipeline/versions/7ddfc432c82182471a14f3136c778635e1620/base_gems/gems/httpclient-2.3.4.1/lib/httpclient/session.rb:986:in
read_body_chunked’: Object#timeout устарел, вместо этого используйте Timeout.timeout .

Ответ №1:

Это проблема с разрешениями. Сначала вы должны предоставить разрешение.

Со страницы тестирования Xamarin:

Когда IDE устанавливает приложение Android 6.0 в первый раз, оно не предоставляет все разрешения, требуемые приложением. Обходной путь для этого — использовать UITest для установки и запуска приложения:

 ConfigureApp.Android.Debug().ApkFile(apkpath).StartApp ()
 

Ссылка на Xamarin.Шпаргалка UITest # Страница Android 6.0