使用SeleniumWebDriver进行自动化测试?

使用SeleniumWebDriver进行自动化测试?,selenium,selenium-webdriver,Selenium,Selenium Webdriver,Selenium RC命令Selenium.waitForPageToLoad(“30000”)在WebDriver中不起作用。 在WebDriver中是否有其他命令可以执行此操作?在Selenium中可以使用两种类型的等待;含蓄和明确 以下示例是用Java编写的: 1) 显式等待: new WebDriverWait(super.getDriver(), 10).until(ExpectedConditions.elementToBeClickable(site_logo)); driver

Selenium RC命令
Selenium.waitForPageToLoad(“30000”)
在WebDriver中不起作用。
在WebDriver中是否有其他命令可以执行此操作?

在Selenium中可以使用两种类型的等待;含蓄和明确

以下示例是用Java编写的:

1) 显式等待:

new WebDriverWait(super.getDriver(), 10).until(ExpectedConditions.elementToBeClickable(site_logo));
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
上述代码将等待10秒,站点徽标元素才可单击,否则将引发异常。ExpectedConditions类有许多其他方法可以使用。您可以检查元素是否存在等

2) 隐式等待:

new WebDriverWait(super.getDriver(), 10).until(ExpectedConditions.elementToBeClickable(site_logo));
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
隐式等待是告诉WebDriver在试图查找一个或多个元素(如果它们不立即可用)时轮询DOM一段时间。默认设置为0。设置后,将为WebDriver对象实例的生命周期设置隐式等待

还有Thread.sleep(以毫秒为单位的时间);方法,但我不建议您使用此方法


有关详细信息:

您可以使用WebDriveWait解决此问题:

要等待元素,请使用wait.until(ExpectedConditions.visibilityOfElementLocated):

你如何定义“不工作”?不是在等吗?它会抛出错误吗?页面是否已完成加载,但webdriver仍在等待?