Selenium 测试中的动作悬停在 Jenkins 中不起作用

问题描述 投票:0回答:0

我有一个用 Java 编写的 selenium UI 测试,它使用 Actions 悬停在一个元素上。

    WebElement element = driver.findElement(By.cssSelector("path to element"));
    Actions hover = new Actions(driver);
    hover.moveToElement(element).perform();

这可以通过命令行运行它,但在 Jenkins Windows 节点上运行时会失败。我已经读过,而不是使用 Actions,而是使用 JavascriptExecutor。我一直在研究如何做到这一点并想出了

    String strJavaScript = "var evObj = document.createEvent('MouseEvents');"
            + "evObj.initMouseEvent(\"mouseover\", true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);"
            + "arguments[0].dispatchEvent(evObj);";
    JavascriptExecutor js =  (JavascriptExecutor) driver;
    js.executeScript(strJavaScript, HoverElement);

但这似乎也行不通。我错过了什么?

selenium-webdriver jenkins mouseover
© www.soinside.com 2019 - 2024. All rights reserved.