xpath - xpath不适用于Selenium Webdriver

标签 xpath selenium-webdriver

我正在使用Google Chrome浏览器作为网络驱动程序。

注册按钮代码为:

<button type="submit" class="signupbtn btn_full btn btn-action btn-block btn-lg">
    <span class="ink animate" style="height: 488px; width: 488px; top: -215px; left: -118px;"></span>
    <i class="fa fa-check-square-o"></i> 
    Sign Up
</button>


错误代码为::


线程“主” org.openqa.selenium.WebDriverException中的异常:
未知错误:元素在点(681,658)不可点击


我的Xpath执行代码是:

driver.findElement(By.xpath("//*@id='headersignupform']/div[9]/button")).click();


但是,它没有执行脚本并抛出错误。如您所见,在控制台中,它正在控制台中找到带有我的代码的按钮。

enter image description here

最佳答案

您需要在该元素上使用焦点或滚动。
您可能还必须使用显式等待。

WebElement element = driver.findElement(By.xpath("//*@id='headersignupform']/div[9]/button"));
Actions actions = new Actions(driver);
actions.moveToElement(element);
actions.perform();


如果仍然无法使用,请使用JavascriptExecutor

JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click();", element);

关于xpath - xpath不适用于Selenium Webdriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46562513/

相关文章:

xpath - 在 Xpath 中传递 Cyrilics 包含返回 XML 值错误。破烂。 python 2

java - Java 中的 ChromeDriver 实例化永远挂起?

c# - 我如何使用 Selenium WebDriver 在后台打开 chrome 新标签窗口?

selenium-webdriver - reportTestCaseResult() 给出 teSTLink.api.java.client.TestLinkAPIException

python - 无法在某些搜索框中使用主题标签生成结果

sql-server - Xpath不正确地转换Char(13)

匹配任何特定元素名称的多个属性的 XPath 查询

java - 在 Java 应用程序中执行 XQuery 中的命令 block

jquery - 使用 xpath 在 jQuery 中选择元素?

c# - 使用 Webdriver 使用 Selenium 超时的最佳方法是什么