У меня есть тест пользовательского интерфейса, который проверяет значение статического текстового элемента, ждет несколько секунд и снова проверяет, чтобы подтвердить изменение. Сначала это не работало, потому что иерархия не обновлялась. Я заметил это в журнале;
Используйте кешированную иерархию доступности для
Я нашел обходной путь для этого, просто добавив касание в меню и открывая/закрывая его, чтобы синтезировалось событие и обновлялась иерархия.
Однако было бы лучше, если бы был способ очистить кеш напрямую или принудительно обновить. Я не нашел его в API. Я что-то упускаю?
Любые идеи?
это то, что я делаю;
XCTAssertEqual(app.staticTexts["myText"].label, "Expected 1")
sleep(20)
menu.tap()
sleep(1)
menu.tap()
XCTAssertEqual(app.staticTexts["myText"].label, "Expected 2")
Что я хотел бы быть в состоянии сделать это
XCTAssertEqual(app.staticTexts["myText"].label, "Expected 1")
sleep(20)
app.elements.refresh()
XCTAssertEqual(app.staticTexts["myText"].label, "Expected 2")
expectationForPredicate
иwaitForExpectationsWithTimeout
для ожидания или что-то еще? - person Michael   schedule 17.12.2015