Как получить доступ к элементу кнопки задней панели универсальным способом в UITests в Xcode?

проблема в том, когда я пытаюсь получить доступ к элементу кнопки задней панели, потому что он представлен:

  • Restaurants заголовок
  • Back заголовок
  • без заголовок

как это на экраны:

enter image description here enter image description here enter image description here

В настоящее время я обращаюсь к нему так:

let backButton = XCUIApplication().buttons["Restaurants"]

но это не будет работать для других дел. Это не универсальный способ. Могу ли я как-то установить его accessibilityIdentifier или sth еще?

3 ответов


обычно кнопка "Назад" имеет тенденцию быть первым элементом кнопки на панели навигации

app.navigationBars.buttons.element(boundBy: 0).tap()

на основе Аарон Sofaers комментарий, вы также можете установить accessibilityIdentifier непосредственно в Interface Builder.

enter image description here


вот как вы можете сделать это Swift 3:

app.navigationBars.buttons.element(boundBy: 0).tap()