使用Xcode进行UI测试:如何找到没有标题的按钮?

时间:2017-06-04 16:15:37

标签: macos xcode-ui-testing

我的用户界面中有一些按钮只显示图像而没有标题。如何在UI测试期间访问它们?由于缺少标题,window.buttons["delete"].click()找不到该按钮。我无法设置标题,因为图像具有一定的透明度。

2 个答案:

答案 0 :(得分:7)

您应该设置accessibilityIdentifier。这是一个非面向用户的属性,旨在允许您识别UI测试中的元素。引入它是为了阻止人们滥用accessibilityLabel,人们之前会用它来识别测试中的内容,但这会影响配音用户的体验,他们会在accessibilityLabel时听到内容选择一个元素。

// app code
let myButton: UIButton!
myButton.accessibilityIdentifier = "deleteButton"

// test code
let app = XCUIApplication()
let deleteButton = app.buttons["deleteButton"]

答案 1 :(得分:2)

您可以通过accessibilityLabel找到按钮。所以,首先设置标签:

deleteButton.setAccessibilityLabel("delete")

然后您可以正常访问它:

 untitledWindow.buttons["delete"].click()