java - 在 "chrome://downloads/"页面找不到 Web 元素

标签 java selenium selenium-webdriver selenium-chromedriver

我正在使用 Java 和 Selenium 为 Chrome 编写测试。有时我需要访问 chrome://downloads/ 并单击 CLEAR ALL 按钮。我可以通过

访问该页面
RemoteWebDriver driver = (RemoteWebDriver) driverChrome;
        driver.executeScript("window.open();");
        Thread.sleep(500);
        tabs = new ArrayList<String>(driverChrome.getWindowHandles());
        driverChrome.switchTo().window(tabs.get(1));
        Thread.sleep(500);
        driverChrome.get("chrome://downloads/");

但是我无法点击按钮,无论我使用什么xpath,它都会说没有这样的元素

最佳答案

下面的 JavascriptExecutor 示例使用 selenium 执行单击 CLEAR ALL 按钮:-

JavascriptExecutor executor = (JavascriptExecutor)driver
executor.executeScript("var dm = document.getElementsByTagName('downloads-manager')[0];var toolbar = dm.shadowRoot.getElementById('toolbar');var actions = toolbar.shadowRoot.getElementById('actions');actions.getElementsByClassName('clear-all')[0].click();");

Chrome 版本 50.0.2661.102 m 中测试

希望对你有帮助..:)

关于java - 在 "chrome://downloads/"页面找不到 Web 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37503202/

相关文章:

selenium - 用于Firefox的Docker设置语言的Selenium Grid

python - 无法使用 selenium 取消选择已选择的空白区域

java - 如何使用 Selenium 和 Java 在 https ://www. phptravels.net/website 中提取 HTML5 约束验证的文本?

返回 NullPointerException 的 Java 文件

java - 其他选项 - 如何设置该值?

c# - 在 C# 中等待 Selenium Web 驱动程序中的标签标签文本

selenium - 在 jenkins 中运行我的 selenium 项目时出现 Maven 错误

selenium - selenium-server-standalone.jar 和 chromedriver 之间的版本兼容性?

java - 查找流程图中的所有方法?

使用 Google map 的 Android 导航应用程序的 Java 与 HTML5