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