【问题标题】:Selenium execute javascript doesn't workSelenium 执行 javascript 不起作用
【发布时间】:2016-06-22 22:27:12
【问题描述】:

在 Chrome 浏览器的 javascript 控制台中,我执行了 document.querySelector('shop-app /deep/ shop-button'),它返回了标记。当我尝试使用 selenium java 驱动程序(v 53)在 selenium webdriver 中执行相同的操作时,最新版本的 ChromeDriver,我得到 NullPointer,

WebElement shadowRoot = (WebElement) ((JavascriptExecutor)driver).executeScript("return document.querySelector('shop-app /deep/ shop-button')");

我正在尝试访问网站上的商店按钮,非常感谢https://shop.polymer-project.org/.Any 在这方面的帮助。

【问题讨论】:

  • 有 4 个“立即购买”按钮您希望全部访问?
  • 我正在尝试访问第一个按钮,在男士外套部分。稍微修改的代码是:WebElement shadowRoot = (WebElement) ((JavascriptExecutor)driver).executeScript("return document.querySelector('商店应用程序 /deep/ 商店按钮')"); WebElement mensOuterWearBtn = shadowRoot.findElement(By.tagName("a")); mensOuterWearBtn.click();

标签: javascript java selenium-webdriver


【解决方案1】:

您还可以尝试使用简单的查找元素单击商店按钮查找元素。下面是一个sn-p的代码:

WebElment logoElement = findElement(By.className("logo")).findElement(By.tagName("a"));
logoElement.click();

您也可以尝试通过 Xpath 进行搜索:

WebElment logoElement = findElement(By.xpath("//*[@id="header"]/app-toolbar/div[2]"));
logoElement.click();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-14
    • 2017-08-30
    • 1970-01-01
    • 2018-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多