2012-02-07 3 views
2

Я тестирую свое приложение. Там у меня есть текстовое поле, где сначала я ввожу буквы, затем меняю клавиатуру на цифры и вводим числа, чтобы получить строку qwerty123. Но UIAutomation этого не понимает. Когда я запускаю этот скрипт, он говорит "tap point object is required" на линии "target.frontMostApp().keyboard().typeString("qwerty123\n");" Как я могу объяснить ему, что клавиатура изменилась?Изменение клавиатуры в UIAutomation

ответ

0

Вы можете установить значение TextField с SetValue, который принесет окно клавиатуры и коснитесь Готово элемент клавиатуры

textfield.setValue(addressLink); target.frontMostApp().keyboard().elements()["done"].tap();

You can also do following 

target.frontMostApp().keyboard().elements()["q"].tap(); target.frontMostApp().keyboard().elements()["w"].tap(); target.frontMostApp().keyboard().elements()["more"].tap(); target.frontMostApp().keyboard().elements()["1"].tap(); target.frontMostApp().keyboard().elements()["2"].tap(); target.frontMostApp().keyboard().elements()["done"].tap();

+0

Это чувствительный к регистру. Это должно быть «сделано», а не «сделано», – neo

0

Чтобы установить любую строку, просто использовать следующие:

window.secureTextFields()[0].setValue(""); //Sets textfield to empty. 
app.keyboard().typeString(qwerty123); //Type any string you want 
app.keyboard().typeString("\n"); //Press 'Enter'. Also can go in the above line.