Как найти кнопку с предикатом под UITests в Xcode7?

Мне нужно получить доступ к следующей кнопке:

Эта строка отлично работает:

app.buttons["Reorder 1, $27 000, LondonStreet, ok, Pending"]

но это не

app.buttons.elementMatchingPredicate(NSPredicate(format: "accessibilityTitle BEGINSWITH[cd] %@", "Reorder 1"))

1 ответ

Решение

При поиске элементов с помощью предикатов вы должны использовать XCUIElementAttributes Протокол. Для этого примера я не думаю, title будет на самом деле работать, но попробуйте использовать label (который должен отображаться на accessibilityLabel).

По какой-то причине %@ опция формата не работает в Swift. Также обратите внимание на дополнительные одинарные кавычки вокруг "Переупорядочить 1".

let predicate = NSPredicate(format: "label BEGINSWITH[cd] 'Reorder 1'")
let button = app.buttons.elementMatchingPredicate(predicate)
Другие вопросы по тегам