Java 正在等待列表中的一个元素

Java 正在等待列表中的一个元素,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我有一个元素的waitinf代码: public WebElement waitElement(String selector) { WebElement element = wait.until((WebDriver d) -> d.findElement(By.cssSelector(selector))); return element; } 我有一张桌子。所以我总是等待行的出现。 但是如果桌子是空的,我有个问题。在本例中,网格中有一个“no-dat

我有一个元素的waitinf代码:

public WebElement waitElement(String selector) {
        WebElement element = wait.until((WebDriver d) -> d.findElement(By.cssSelector(selector)));
        return element;
}
我有一张桌子。所以我总是等待行的出现。 但是如果桌子是空的,我有个问题。在本例中,网格中有一个“no-data_grid”类的元素


所以问题是如何等待这两个元素中的一个

您可以使用
css选择器
等待其中一个

public WebElement waitElement(String firstLocator, String secondLocator) {
    WebElement element = wait.until((WebDriver d) -> d.findElement(By.cssSelector(firstLocator + ", " + secondLocator)));
    return element;
}
当驱动程序设法找到其中一个元素时,将返回此消息

您还可以使用
预期条件

wait.until(
    ExpectedConditions.or(
        ExpectedConditions.presenceOfElementLocated(By.cssSelector(firstLocator)),
        ExpectedConditions.presenceOfElementLocated(By.cssSelector(secondLocator))
    )
);

您可以使用
css选择器
等待其中一个

public WebElement waitElement(String firstLocator, String secondLocator) {
    WebElement element = wait.until((WebDriver d) -> d.findElement(By.cssSelector(firstLocator + ", " + secondLocator)));
    return element;
}
当驱动程序设法找到其中一个元素时,将返回此消息

您还可以使用
预期条件

wait.until(
    ExpectedConditions.or(
        ExpectedConditions.presenceOfElementLocated(By.cssSelector(firstLocator)),
        ExpectedConditions.presenceOfElementLocated(By.cssSelector(secondLocator))
    )
);

“无数据网格”不在表中。当表为空时,它不存在于网格中。因此,我在网格中有一个表或“no-data\u grid”类的元素。不是两者都有。我不需要找到它。我需要等待。因为这意味着所有元素都已加载。@BerasMark在您的问题和您写的第一条注释中指出,如果表为空,则有
no-data\u网格
元素。现在,您是说,当所有元素都加载时,您就拥有了它。是哪一个?好的。我有一个页面和一个网格。如果网格已加载,则页面已加载。网格可以由“无数据网格”类的表或元素组成。所以我不得不等待其中一个,“无数据网格”不在表中。当表为空时,它不存在于网格中。因此,我在网格中有一个表或“no-data\u grid”类的元素。不是两者都有。我不需要找到它。我需要等待。因为这意味着所有元素都已加载。@BerasMark在您的问题和您写的第一条注释中指出,如果表为空,则有
no-data\u网格
元素。现在,您是说,当所有元素都加载时,您就拥有了它。是哪一个?好的。我有一个页面和一个网格。如果网格已加载,则页面已加载。网格可以由“无数据网格”类的表或元素组成。所以我得等他们中的一个。