Нужны идеи, чтобы добавить интеллектуальное ожидание в тестах XCUI - PullRequest
0 голосов
/ 22 октября 2019

Добавление интеллектуального ожидания перед нажатием на каждую кнопку

Я добавил функцию, которая вызывается при каждом нажатии на элемент

//    if button.exists {
//      button.tap()
//    } else if !button.exists {
//      sleep(10)
//      button.tap()
//
//    } else {
//      print("***************** Unable to find " + button.title + " *****************")
//    }

Я называю это Pagename. tapBtn (элемент) Мне нужна какая-то обычная функция без сна ... Я не знаю, как я могу использовать предикат для решения этой проблемы.

1 Ответ

1 голос
/ 22 октября 2019

Вы, вероятно, будете использовать что-то вроде

extension XCUIElement {
     func waitAndTap() {
        _ = waitForExistence(timeout: 30)
        tap()
     }
}

Эта функция расширения будет касаться элемента, как только он существует. Если это не так, это не удастся.

Обратите внимание, что я выбросил сообщение об ошибке, потому что tap() автоматически выдаст его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...