我正在使用XCUITest来测试键盘存在时的UI行为 - 例如,如果键盘出现时内容正确向上移动。
出于某种原因,iOS模拟器坚持定期禁用软件键盘。有时重新启动模拟器,但有时甚至只是在测试过程中切换文本字段时。
有没有办法在模拟器中始终强制使用软键盘?例如命令行参数或XCUIDevice上的属性?我在CI上运行这些测试,因此无法在模拟器中手动启用软件键盘。
我有同样的问题,这对我有用:
(单击模拟器)>硬件>键盘
然后取消选中“连接硬件键盘”
osascript -e'退出app“模拟器”'
SIMUS_KEYBOARD =
/usr/libexec/PlistBuddy -c "Print :DevicePreferences" ~/Library/Preferences/com.apple.iphonesimulator.plist | perl -lne 'print $1 if /^ (\S*) =/'
echo“$ SIMUS_KEYBOARD”|读取-r a; do / usr / libexec / PlistBuddy -c“Set:DevicePreferences:$ a:ConnectHardwareKeyboard false”〜/ Library / Preferences / com.apple.iphonesimulator.plist || / usr / libexec / PlistBuddy -c“Add:DevicePreferences:$ a:ConnectHardwareKeyboard bool false”〜/ Library / Preferences / com.apple.iphonesimulator.plist; DONE
在测试目标的“构建阶段”中运行以上脚本使模拟器始终使用模拟器键盘。