首页 > 解决方案 > 如何在xcuitest的文本框的右视图中访问元素

问题描述

我是 XCUITESTING 的新手,这是我的代码

   let btn = UIButton(frame: CGRect(x: 0, y: 5, width: 50, height: 40))
    btn.addTarget(self, action: #selector(addEmail), for: .touchDown)
    btn.setImage(UIImage(named: "f_add_email"), for: .normal)
    btn.contentMode = .center
    btn.isAccessibilityElement = true
    btn.accessibilityIdentifier = "emailsbutton"

    txtField.isAccessibilityElement = true
    txtField.accessibilityIdentifier = "emailtextbox"
    txtField.rightViewMode = .always
    txtField.rightView = btn

我可以访问我的文本框,例如 XCUIApplication().textFields["emailtextbox"]

但是如果我使用 XCUIApplication().textFields["emailsbutton"] 它会抛出错误

标签: xcuitest

解决方案


可能是该按钮位于文本字段下。如果是这样,您需要使用以下代码访问它:

XCUIApplication().textFields.buttons["emailsbutton"]

推荐阅读