Как получить доступ к диалоговому окну «Идентифицировать» Apple Id из UI Test? - PullRequest
0 голосов
/ 31 августа 2018

У меня есть несколько тестов пользовательского интерфейса, и я хочу проверить, что происходит, когда я нажимаю кнопку «подписаться». В симуляторе отображается предупреждение с просьбой войти с идентификатором Apple:

enter image description here

Я пытался дождаться оповещения, используя предикат app.alerts["Sign In"] и функцию addUIInterruptionMonitor. Неудачно. Я даже пытался дождаться появления кнопки «Отмена», это тоже не сработало.

Есть идеи, как обработать это предупреждение и нажать «Отмена»?

1 Ответ

0 голосов
/ 03 сентября 2018

Проблема с этим предупреждением заключается в том, что оно создается не из вашего приложения, а из системного приложения - Трамплин . Итак, чтобы иметь возможность запрашивать элементы из этого приложения, вы должны создать XCUIApplication объект с идентификатором пакета Springboard:

let springboardApp = XCUIApplication(bundleIdentifier: "com.apple.springboard")

Затем найдите предупреждение:

let signInAlert = springboardApp.alerts.element

После этого вы сможете найти кнопку Cancel :

signInAlert.buttons["Cancel"].tap()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...