Я использую API-интерфейсы пользовательского интерфейса, представленные в Xcode 7 XCTest. На моем экране у меня есть текст, загруженный из сети.
Тест не выполняется, если я просто проверяю его с помощью свойства exists
.
XCTAssert(app.staticTexts["Text from the network"].exists) // fails
Это действительно работает, если я сначала отправлю кран или любое другое событие в текст следующим образом:
app.staticTexts["Text from the network"].tap()
XCTAssert(app.staticTexts["Text from the network"].exists) // works
Похоже, если я просто позвоню exists
, он сразу же оценит его и завершит неудачу, потому что текст еще не загружен из сети. Но я думаю, что когда я вызываю метод tap()
, он ждет появления текста.
Есть ли лучший способ проверить наличие текста, который доставлен из сети?
Что-то вроде (этот код не будет работать):
XCTAssert(app.staticTexts["Text from the network"].eventuallyExists)