Swift UITest - 找不到具有辅助功能标识符的textField匹配项

时间:2017-04-23 19:19:52

标签: swift xcode textfield uitest

尝试创建一个UITest,用于在文本字段中输入电子邮件地址/密码,然后点击登录按钮。使用Xcode。

我看UITest导航到正确的页面,但它没有检测到文本字段。我确保两个文本字段都选中了“辅助功能”框,并且我已经为它们指定了标识符。

我收到了这个错误:

  

UI测试失败 - 找不到文本字段的匹配项

func testExample() {
    let app = XCUIApplication()

    //Test login page
    app.buttons["loginButton"].tap()

    //Here it navigates to the desired page 
    let emailField = app.textFields["email"]
    emailField.tap()
    emailField.typeText("xxx.xx.edu")

    let passwordField = app.textFields["password"]
    passwordField.tap()
    passwordField.typeText("xxx")

    app.buttons["loginButton"].tap()

   // let loginAlert = app.alerts["alertVC"]

   // XCTAssertEqual(loginAlert.title, "Error")        
}

可访问性指标分别是“email”和“password”。当我自己运行模拟器时,登录工作正常。

编辑:显然没有任何文本字段(count = 0),即使我看到它们并在页面上使用它们......

带有文本字段的故事板图片:

image

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,我通过取消选中"辅助功能已启用" "观点" ViewControllers

答案 1 :(得分:1)

如果UITextFiled设置了SecureTextEntry true ,则应使用:

let passwordField = app.secureTextFields["password"]