Чтобы отредактировать содержимое ячейки, вам нужно дважды щелкнуть по ней. Однако с помощью webdriver у них нет функции doubleclick в api. Как еще я могу изменить содержимое ячейки?Webdriver: Взаимодействие с сеткой
1
A
ответ
1
В какой сетке вы спрашиваете? Для большинства сеток есть функция JavaScript, чтобы начать редактирование ячейки.
В любом случае вы можете запустить двойной клик с помощью JavaScript. Если предположить, что в element
является IWebElement
, на котором вы хотели бы двойной щелчок:
Для InternetExplorerDriver
:
((IJavascriptExecutor)driver).ExecuteScript(
"arguments[0].fireEvent('ondblclick')", element);
Для FirefoxDriver
и «ChromeDriver»:
((IJavascriptExecutor) driver).ExecuteScript(
"var evt = document.createEvent('MouseEvents'); evt.initMouseEvent('dblclick'," +
"true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0," +
"null); " +
"arguments[0].dispatchEvent(evt);", element);
класс Сетка является " x-grid3 " – Reflux
Если это сетка ExtJS, тогда у нее есть метод startEditing (Number rowIndex, Number colIndex), который может быть запущен –