代码之家  ›  专栏  ›  技术社区  ›  Deepak Terse

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

  •  0
  • Deepak Terse  · 技术社区  · 7 年前

    我使用的是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 回复  |  直到 7 年前
        1
  •  1
  •   Oletha    7 年前

    您可能需要做两件事:

    1. 将切换设置为辅助功能元素
    2. 为切换指定辅助功能标识符

    根据您当前的设置,两者可能都不是必需的。

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

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

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