用于在文本字段内切换按钮的IOS UI测试用例

时间:2018-02-14 19:08:37

标签: ios xcode-ui-testing

我正在使用XCTest框架,它是IOS中UI测试的默认测试框架。 我正在编写一个测试用例,通过单击隐藏显示切换按钮来检查文本字段中的文本是可见还是隐藏。

IOS Toggle button inside text field

问题是切换按钮位于文本字段内,我无法访问切换按钮。 在录制时,它会将点击切换按钮视为点击文本字段并生成如下代码:

let secureTextField = element3.children(matching: .other).element(boundBy: 1).children(matching: .secureTextField).element
        secureTextField.tap()

1 个答案:

答案 0 :(得分:1)

您可能需要做两件事:

  1. 将切换设置为辅助功能元素
  2. 为切换提供辅助功能标识符
  3. 根据您当前的设置,两者可能都没有必要。

    // app code
    let toggleButton: UIButton!
    toggleButton.isAccessibilityElement = true
    toggleButton.accessibilityIdentifier = "showHideToggle"
    

    这应该允许XCTest查看切换并为您提供一种在测试代码中找到它的简单机制:

    // test code
    let app = XCUIApplication()
    let toggle = app.buttons["showHideToggle"]
    toggle.tap()