Java 所定位元素的可见性不工作

Java 所定位元素的可见性不工作,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,selenium中的方法工作得不好,有时这个方法会通过true,然后当我试图通过is获取元素时,会给出错误is元素不可见。下面是代码 waitPath.until(ExpectedConditions.visibilityOfElementLocated(By.id("Table1"))); WebElement we1 = pathfinderdriver.findElement(By.id("Table1")); waitPath.until(Expe

selenium中的方法工作得不好,有时这个方法会通过true,然后当我试图通过is获取元素时,会给出错误is元素不可见。下面是代码

waitPath.until(ExpectedConditions.visibilityOfElementLocated(By.id("Table1")));
WebElement we1 = pathfinderdriver.findElement(By.id("Table1"));
waitPath.until(ExpectedConditions.visibilityOfElementLocated(By.id("Table3")));
即使我已经用下面的代码进行了检查,但有时也会失败

while(!(we1.findElement(By.id("Table3")).isDisplayed() ))            
{          
 Thread.sleep(3000);
}
Thread.sleep(5000);
WebElement we2 = we1.findElement(By.id("Table3"));

尝试使用另一种方法,如xpath获取元素

ExpectedConditions.visibilityOfElementLocated(By)

尝试使用另一种方法,如xpath获取元素

ExpectedConditions.visibilityOfElementLocated(By)

您能给我们看一下第一块代码中的错误信息吗?如果元素不存在,则第二个块中的代码将在
处抛出
NoSuchElementException
,而(!(we1.findElement(By.id(“Table3”))
。错误为-Table3org.openqa.selenium.NoSuchElementException:无法找到id==Table3的元素(警告:服务器未提供任何堆栈跟踪信息)你能为相同的对象共享html代码吗?这很奇怪。基本上,等待将引发TimeoutException而不是NoSuchElementException。你确定错误消息来自
waitPath.until(ExpectedConditions.visibilityOfElementLocated(By.id(“Table3”))
您可以向我们显示第一个块中的代码的错误消息吗?您在第二个块中的代码将在
while(!(we1.findElement(By.id)(“表3”)处抛出
NoSuchElementException
如果元素不存在。错误为-Table3org.openqa.selenium.NoSuchElementException:找不到id==Table3的元素(警告:服务器未提供任何stacktrace信息)你能为同一个共享html代码吗?这很奇怪。基本上,等待将抛出TimeoutException而不是NoSuchElementException。你确定错误消息来自
waitPath.until(ExpectedConditions.visibilityOfElementLocated(By.id(“Table3”);
ExpectedConditions.visibilityOfElementLocated(By.xpath)吗(“…”)ExpectedConditions.visibilityOfElementLocated(By.xpath(“…”)