如何在 Xcode7 中的 UITests 下找到带谓词的按钮?

How to find button with predicate under UITests in Xcode7?

我需要访问以下按钮:

这条线工作正常:

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

但这不是:

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

通过谓词查找元素时,您必须使用 XCUIElementAttributes Protocol. For this example, I don't think title will actually work, but try using label(应映射到 accessibilityLabel)。

出于某种原因,%@ 格式选项似乎在 Swift 中不起作用。另请注意“重新订购 1”周围的额外单引号。

let predicate = NSPredicate(format: "label BEGINSWITH[cd] 'Reorder 1'")
let button = app.buttons.elementMatchingPredicate(predicate)