等待相关的-selenium Java代码执行下一个命令,尽管页面没有按照上一个命令加载

时间:2015-02-25 06:42:25

标签: selenium-webdriver

driver2.findElement(By.id("txtPassword")).sendKeys("password123");
driver2.findElement(By.id("btnLogon")).click();
driver2.findElement(By.id("Process_navItem")).click();
driver2.findElement(By.id("revit_navigation_NavItem_0")).click();

代码的第4行被执行,尽管页面没有按照第三行代码加载。因此失败了。

请在一个简单的代码中建议一些等待方法,因为它更新鲜。

1 个答案:

答案 0 :(得分:0)

您可以在代码的第4行之前使用隐式等待:

driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

您可以在上面的代码中增加秒数。我已经设定了30秒。

如果上述等待不起作用,那么您也可以按照以下方式使用等待:

 WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.id("revit_navigation_NavItem_0")));