如何使用默认等待时间对硒中的webElement进行可见或查找或显示,除非使用隐式等待或webdriver等待

时间:2018-10-25 10:20:34

标签: selenium selenium-webdriver

我要对硒测试的代码应用一个规范,因为 webdriver必须等待web元素随时显示或加载到网页上。它应该适用于代码中的每个Web元素。有什么办法可以做到这一点。无需在需要时应用隐式等待或Webdriver等待。我可以使用此规范,以便即使将来任何webElement有时都需要变得可见时,它将等待默认值直到可见。

1 个答案:

答案 0 :(得分:4)

您可以创建一个方法,该方法接收By作为参数并返回WebElement,并将其用于所有元素搜索而不是driver.findElement()

// Java syntax
public WebElement findElement(By by) {
    WebDriverWait wait = new WebDriverWait(driver, 30);
    WebElement element = wait.until(ExpectedConditions.visibilityOfElementLocated(by));
    return element;
}

您也可以将WebDriverWait wait = new WebDriverWait(driver, 30);放在类级别,而不是每次都创建一个新实例。