Я пытаюсь написать функциональный тест для Kendo UI Grid в своем приложении. В моем тесте я нажимаю кнопку, чтобы добавить новую строку в сетку, затем я хочу перемещаться по каждой из ячеек, присваивая значение полю ввода, содержащемуся в ячейке, по мере продвижения. Я могу сделать это «вручную» в браузере, и это работает без проблем. Однако, если я попытаюсь автоматизировать этот процесс с помощью Geb, значение, введенное в каждую ячейку, будет очищено, как только я перейду от поля ввода.
Одно наблюдение состоит в том, что когда я выполняю этот тест вручную, как только я ввожу значение во входные данные, я вижу черный треугольник (то есть значок «грязного» кендо) в верхнем левом углу ввода. Если я попытаюсь сделать это программно в своем тесте, я не увижу этот значок.
Я пробовал различные методы заполнения поля ввода, например:
1. productDescriptionField.find("input",0).value("some description")
2. productDescriptionField.find("input",0) << "some description"
3. (driver as JavascriptExecutor).executeScript("jQuery('.k-input').val('some description')")
где productDescriptionField
— это селектор geb для поля ввода, показанного во фрагменте HTML ниже:
<td data-role="editable" class="k-edit-cell" id="grid_active_cell" role="gridcell">
<input data-bind="value:description" name="description" class="k-input k-textbox" type="text">
</td>
Как я могу лучше имитировать то, что я, как человек, использующий веб-браузер, делаю при взаимодействии с сеткой кендо?