Java 无法使用Xpath和CSS找到元素

Java 无法使用Xpath和CSS找到元素,java,css,selenium,selenium-webdriver,webdriver,Java,Css,Selenium,Selenium Webdriver,Webdriver,我无法找到使用XPATH和CSS的元素 在使用firefox执行代码时,我尝试了各种方法来查找这里提到的元素,但总是出现下面提到的错误 1500539792269 geckodriver信息geckodriver 0.18.0 1500539792279壁虎河信息监听127.0.0.1:18947 1500539793062 geckodriver::木偶信息启动浏览器C:\Program 文件(x86)\Mozilla Firefox\Firefox.exe,带args[“-marionete

我无法找到使用XPATH和CSS的元素

在使用firefox执行代码时,我尝试了各种方法来查找这里提到的元素,但总是出现下面提到的错误

1500539792269 geckodriver信息geckodriver 0.18.0 1500539792279壁虎河信息监听127.0.0.1:18947 1500539793062 geckodriver::木偶信息启动浏览器C:\Program 文件(x86)\Mozilla Firefox\Firefox.exe,带args[“-marionete”] 1500539798479木偶信息监听端口64608 2017年7月20日 下午2:06:39 org.openqa.selenium.remote.ProtocolHandshake createSession 信息:检测到的方言:W3C JavaScript警告: ,行 1:不推荐使用/@指示sourceMappingURL pragmas。使用 //#相反,线程“main”中存在异常 org.openqa.selenium.NoSuchElementException:无法定位元素: 有关此错误文档的边栏按钮,请访问:生成信息: 版本:“未知”,版本:“未知”,时间:“未知”

代码:

driver.findElement(By.id("sidebar-button")).click();
Thread.sleep(2000);
Actions action = new Actions(driver);
WebElement we = driver.findElement(By.xpath("//*[@id='reservations']/a"));
action.moveToElement(we).build().perform();

请帮助我解决此问题

请在驱动程序.findElement(By.id(“侧栏按钮”))之前等待一段时间。单击()


由于第一行出现“NoTouchElementException”,请共享HTML代码段。geckdriver似乎有问题,您是否在其他浏览器或其他firefox或geck版本中遇到此错误。你能检查一下吗?
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement element = wait.until(
    ExpectedConditions.visibilityOfElementLocated(By.id("sidebar-button")));