Драйвер Selenium для тестирования SpreadJS
Как я могу сделать клик (события) на основе положения ячейки в распространении? Я пытаюсь что-то вроде:
sheet.setActiveCell(3,3);
sheet.cellClick();
а также
sheet.getCell(3,3).cellClick();
Но это не работает. Заранее спасибо, если есть решение или совет.
1 ответ
Решение
Что вам нужно сделать, так это создать экземпляр действия с использованием селена. Например, вы можете открыть веб-драйвер Chrome и перейти к одному из наших примеров:
var webDriver = new OpenQA.Selenium.Chrome.ChromeDriver();
webDriver.Navigate().GoToUrl("https://www.grapecity.com/en/demos/spread/JS/ExcelMobileSample/");
Затем вычислите координаты x/y для текущей страницы, используя getCellRect и смещение хост-элемента SpreadJS:
var cellRect = sheet.getCellRect(3, 3);
var host = spread.getHost();
var offset = $(host).offset();
cellRect.x += offset.left + cellRect.width / 2;
cellRect.y += offset.top + cellRect.height / 2;
Затем вы переместите мышь в центральное положение ячейки (в данном случае ячейка D4):
var action = new OpenQA.Selenium.Interactions.Actions(webDriver);
action.MoveByOffset(x, y);
И, наконец, нажмите на эту ячейку:
action.Click();
action.Perform();
Дайте мне знать, если это поможет.
С Уважением,
Spread Team