Xcode UI测试UIKeyInput typeText

时间:2016-03-02 06:32:18

标签: ios swift xcode-ui-testing uikeyinput

在Xcode UI测试期间,我如何insertText符合UIView的{​​{1}}?

我创建的CodeInputView符合UIKeyInput

当我手动输入代码时记录自己Xcode writes app.typeText("1234")

但是,当我尝试播放时,我收到错误UI Testing Failure - Neither element nor any descendant has keyboard focus。并且,该问题的解决方案都没有奏效。

2 个答案:

答案 0 :(得分:2)

我找到了UIKeyInput的解决方案。请使用:

app.keys["1"].tap()
app.keys["2"].tap()
app.keys["3"].tap()
app.keys["4"].tap()

// Instead of app.typeText("1234")

答案 1 :(得分:1)

CodeInputView需要关注才能输入文字。通过占位符文本访问输入或手动设置辅助功能标签。

let app = XCUIApplication()
let codeTextField = app.textFields["Your code"]

codeTextField.tap()
app.typeText("1234")
  

以上假设占位符或辅助功能标签设置为“您的代码”。