Программная клавиатура Force в iOS Simulator для XCUITest - PullRequest
2 голосов
/ 27 марта 2019

Я использую XCUITest для проверки поведения пользовательского интерфейса при наличии клавиатуры - например, если содержимое отображается правильно, когда появляется клавиатура.

По какой-то причине симулятор iOS настаивает на регулярном отключении программного обеспечения.клавиатура.Иногда пока симулятор перезагружается, но иногда даже просто при переключении текстовых полей в середине теста.

Есть ли способ всегда принудительно вводить программную клавиатуру в симуляторе?например, аргумент командной строки или свойство в XCUIDevice?Я запускаю эти тесты на CI, поэтому ручное включение программной клавиатуры в симуляторе не вариант.

Ответы [ 2 ]

1 голос
/ 27 марта 2019

У меня была такая же проблема, и у меня это сработало:

(нажмите на симулятор)> Оборудование> Клавиатура

затем снимите флажок «Подключить аппаратную клавиатуру»

0 голосов
/ 25 апреля 2019

osascript -e 'выйти из приложения "Симулятор"'

SIMUS_KEYBOARD = /usr/libexec/PlistBuddy -c "Print :DevicePreferences" ~/Library/Preferences/com.apple.iphonesimulator.plist | perl -lne 'print $1 if /^ (\S*) =/'

echo "$ SIMUS_KEYBOARD" |пока читаешь -ра;do / usr / libexec / PlistBuddy -c "Set: DevicePreferences: $ a: ConnectHardwareKeyboard false" ~ / Библиотека / Предпочтения / com.apple.iphonesimulator.plist ||/ usr / libexec / PlistBuddy -c "Добавить: DevicePreferences: $ a: ConnectHardwareKeyboard bool false" ~ / Library / Preferences / com.apple.iphonesimulator.plist;выполнено

выполнение вышеуказанного скрипта в «фазе сборки» тестовой цели, чтобы симулятор всегда использовал клавиатуру симулятора.

...