gpt4 book ai didi

uitextfield - Xcode UI测试-使用typeText()方法和自动更正键入文本

转载 作者:行者123 更新时间:2023-12-03 13:19:49 25 4
gpt4 key购买 nike

我进行了如下测试:

let navnTextField = app.textFields["First Name"]
let name = "Henrik"
navnTextField.tap()
navnTextField.typeText("Henrik")
XCTAssertEqual(navnTextField.value as? String, name)


问题是,由于系统设置,默认情况下,我的 iPhone Simulator具有波兰语键盘,并且“ Henrik”通过自动更正自动更改为“ ha”。

一个简单的解决方案是从 iOS Settings删除波兰语键盘。但是,此解决方案无法解决问题,因为可以重置 iPhone Simulator,然后测试将再次失败。

有什么方法可以在测试用例之前设置自动更正,也可以通过其他方式将文本输入到文本字段。

最佳答案

这是XCUIElement上的一个小扩展,可以完成此操作

extension XCUIElement {
// The following is a workaround for inputting text in the
//simulator when the keyboard is hidden
func setText(text: String, application: XCUIApplication) {
UIPasteboard.generalPasteboard().string = text
doubleTap()
application.menuItems["Paste"].tap()
}
}


可以这样使用

let app = XCUIApplication()
let enterNameTextField = app.otherElements.textFields["Enter Name"]
enterNameTextField.tap()
enterNameTextField.setText("John Doe", app)



感谢实施@Apan

关于uitextfield - Xcode UI测试-使用typeText()方法和自动更正键入文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32712036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com