Ошибка тестирования пользовательского интерфейса: не получено уведомление об исчезновении уведомления в течение 2,0 с.

Я пытаюсь записать тестовый пример пользовательского интерфейса и запустить его, но сталкиваюсь с этой ошибкой. По сути, в моем приложении, когда я попадаю на главный экран, пользователя просят разрешить использование уведомлений и местоположения. После того, как я записываю эти события и пытаюсь перейти к другому VC, он записывается нормально.

[app.alerts[@"\u201cSampleApp\u201d Would Like to Send You Notifications"].collectionViews.buttons[@"Don\u2019t Allow"] tap];
[app.alerts[@"Allow \u201cSampleApp\u201d to access your location while you use the app?"].collectionViews.buttons[@"Allow"] tap];
//segue to VC2

Но при воспроизведении вылетает с ошибкой в ​​заголовке.

Не получил уведомление об исчезновении в течение 2,0 сек.

Подозреваю, что к моменту сброса предупреждений кнопка перехода уже нажата и пока ожидает исчезновения домашней ВК, этого не происходит. Правильно ли это понимание? Если да, то как можно отсрочить ожидание, если нет, то помогите.


person Aswath    schedule 08.09.2016    source источник
comment
Идеи, кто-нибудь? Я нашел подобный вопрос, но удалил, так что я не единственный, кто сталкивается с этим, я полагаю. stackoverflow.com/questions/37136467/   -  person Aswath    schedule 08.09.2016
comment
Я получил это, когда застрял на точках останова раньше, не осознавая, что я был на точке останова.   -  person Alex    schedule 21.09.2016


Ответы (1)


Оповещения системного уровня должны обрабатываться addUIInterruptionMonitorWithDescription API. Вот документация Apple Ссылка и пример кода в Swift ниже:

addUIInterruptionMonitorWithDescription("First Dialog") { (alert) -> Bool in
alert.buttons["Allow"].tap()
return true
}

XCUIApplication().tap()
person itsViksIn    schedule 13.09.2016