模拟 iOS 屏幕键盘上的“Go”、“Next”按钮按下以进行 xcode 测试
Posted
技术标签:
【中文标题】模拟 iOS 屏幕键盘上的“Go”、“Next”按钮按下以进行 xcode 测试【英文标题】:Simulate "Go", "Next" button press on iOS onscreen keyboard for xcode test 【发布时间】:2020-07-20 21:06:46 【问题描述】:使用XCUIApplication
编写一些单元测试。
我们进行了可访问性测试,以确保如果用户输入了有效的用户名和密码,则单击屏幕键盘上的“开始”按钮会登录。
我知道像typeText("\r")
这样的功能可以模拟Return
的键盘按下,但我不确定这是否是“Go”的合理替代品。
此外,我们需要测试在用户名字段上单击“下一步”会将您带到其下方的密码字段。
目前我们正在物理设备上手动执行这些测试,但希望将它们自动化。
有没有办法明确告诉 xcode 模拟来自 ios 屏幕键盘的“Go”和/或“Next”点击?
即XCUIApplication().keypress("iOSGO")
或类似的东西。
-或-
这些按钮是否只是在幕后传输Return
和Tab
按键事件,因此typeText("\r")
和typeText("\t")
可以作为可接受的替代品。
【问题讨论】:
【参考方案1】:这些按钮可以在键盘上配置为显示不同的显示而不是“返回”。
查看iOS keyboard with "Go" button instead of return了解更多信息。
你的第二个选项是可靠的,但你应该只使用“/r”而不应该需要“/t”
【讨论】:
唯一需要注意的是“Next”和“Go”是完全不同的动作。一个应该将您从第一个文本框带到第二个文本框,另一个应该尝试让您登录。链接很有帮助,但问题的核心归结为:Does ("Go" == "\r") 和("下一个" == "\t")以上是关于模拟 iOS 屏幕键盘上的“Go”、“Next”按钮按下以进行 xcode 测试的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 测试中模拟 TextField 上的按 ENTER