如何在 Selenium 中执行操作时看到鼠标指针?

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

我正在使用 Selenium Java WebDriver 来自动化 UI 测试。它工作正常,但在执行单击按钮等操作时不显示鼠标指针。如何使鼠标指针在页面上移动并单击按钮时可见?

java selenium selenium-webdriver ui-automation
3个回答
2
投票

您可以使用 JS 突出显示正在与之交互的元素。

    String jsSyyle = "'3px solid red'";
    WebElement element; 
    JavascriptExecutor js = (JavascriptExecutor) driver;
    js.executeScript("arguments[0].style.border=" + jsSyyle, element);

1
投票

执行此操作的方法是使用

Actions
请参阅 文档

例如:

Actions action = new Actions(webdriver);
WebElement myElement = webdriver.findElement(By.xpath("the/xpath/to/element"));
action.moveToElement(myElement).click().build().perform();

希望这对您有帮助!


0
投票

浏览器不会跟踪光标,因为这是操作系统的工作。

感谢这个答案:在硒中显示鼠标光标位置您可以绘制光标。

# python
enable_cursor = """
        function enableCursor() {
          var seleniumFollowerImg = document.createElement("img");
          seleniumFollowerImg.setAttribute('src', 'data:image/png;base64,'
            + 'iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAQAAACGG/bgAAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAA'
            + 'HsYAAB7GAZEt8iwAAAAHdElNRQfgAwgMIwdxU/i7AAABZklEQVQ4y43TsU4UURSH8W+XmYwkS2I0'
            + '9CRKpKGhsvIJjG9giQmliHFZlkUIGnEF7KTiCagpsYHWhoTQaiUUxLixYZb5KAAZZhbunu7O/PKf'
            + 'e+fcA+/pqwb4DuximEqXhT4iI8dMpBWEsWsuGYdpZFttiLSSgTvhZ1W/SvfO1CvYdV1kPghV68a3'
            + '0zzUWZH5pBqEui7dnqlFmLoq0gxC1XfGZdoLal2kea8ahLoqKXNAJQBT2yJzwUTVt0bS6ANqy1ga'
            + 'VCEq/oVTtjji4hQVhhnlYBH4WIJV9vlkXLm+10R8oJb79Jl1j9UdazJRGpkrmNkSF9SOz2T71s7M'
            + 'SIfD2lmmfjGSRz3hK8l4w1P+bah/HJLN0sys2JSMZQB+jKo6KSc8vLlLn5ikzF4268Wg2+pPOWW6'
            + 'ONcpr3PrXy9VfS473M/D7H+TLmrqsXtOGctvxvMv2oVNP+Av0uHbzbxyJaywyUjx8TlnPY2YxqkD'
            + 'dAAAAABJRU5ErkJggg==');
          seleniumFollowerImg.setAttribute('id', 'selenium_mouse_follower');
          seleniumFollowerImg.setAttribute('style', 'position: absolute; z-index: 99999999999; pointer-events: none; left:0; top:0');
          document.body.appendChild(seleniumFollowerImg);
          document.onmousemove = function (e) {
            document.getElementById("selenium_mouse_follower").style.left = e.pageX + 'px';
            document.getElementById("selenium_mouse_follower").style.top = e.pageY + 'px';
          };
        };

        enableCursor();
"""

driver.execute_script(enable_cursor)
© www.soinside.com 2019 - 2024. All rights reserved.