有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

需要等待在加载网页selenium 3.141.5和java 8时找到特定元素

使用selenium 3.141.5(最新版本)和java 8。现在我遇到了这样一种情况,在执行下一行之前,我需要等待网页上的特定元素被加载。我正在尝试使用ExpectedConditions java类,但无法导入该类。在selenium的javadoc中,我可以找到ExpectedConditions和ExpectedCondition。[公共广播局]

static ExpectedCondition<WebElement> presenceOfElementLocated(By locator)

检查页面的DOM上是否存在元素的期望

我没有使用任何maven或任何其他工具。它只是eclipse、java和selenium。 Image from my local eclipse

同样请帮忙。我只想在使用最新的selenium和java执行下一行代码之前,等待特定元素被加载。提前感谢!:)我希望我已经尽力解释清楚了,如果没有那么对不起


共 (2) 个答案

  1. # 1 楼答案

    我正在使用ExpectedConditions

    // modified wait method
    public WebDriverWait wait_sec(WebDriver driver, int sec) {return new WebDriverWait(driver, sec);}
    
    // example of usage one of ExpectedConditions
    driver.get(url_portal);
    WebElement fld_pwd = wait_sec(driver, 60).until(ExpectedConditions.elementToBeClickable(By.name("password")));
    fld_pwd.click();
    fld_pwd.sendKeys(sec_var.getPwd());
    
    // example of negative usage
    wait_sec(driver, 300).until(ExpectedConditions.not(ExpectedConditions.urlContains("#")));
    

    探索预期条件对我的测试来说非常重要

  2. # 2 楼答案

    我切换到selenium 3.11,现在一切都按预期进行!。在那里,我可以使用预期的条件

    谢谢