如果找不到该项目,我该如何忽略异常?硒(硒化物)
How can I ignore the exception if the item is not found? Selenium(selenide)
我的一些测试涉及 importBrokerCheckBox。但并不是所有的测试都要找到它,因为他一定是缺席的。也就是说,如果元素在页面上,那么我们必须点击它,如果它不存在,我们必须进一步通过 code.But below code doesn't work and throw exception - xpath not found
importBrokerCheckBox = $x(".//div[text()='Брокер']/../../../preceding-sibling::span//span[@aria-label=\"caret-down\"]"),
if (importBrokerCheckBox.isDisplayed());
{
importBrokerCheckBox.click();
}
if (importBrokerSettingsCheckbox.isDisplayed());
{
importBrokerSettingsCheckbox.click();
}
基本上有两种选择:
- try/catch 块 - 如果未找到元素(
NoSuchElementException
发生),则执行 catch 块代码(可以为空 ofc)。
- 如果没有找到元素,则使用
List<WebElement> elements = driver.findElements(By.by);
,不会抛出 NoSuchElementException
并且列表保持为空,如 new ArrayList<WebElement>()
。
我的一些测试涉及 importBrokerCheckBox。但并不是所有的测试都要找到它,因为他一定是缺席的。也就是说,如果元素在页面上,那么我们必须点击它,如果它不存在,我们必须进一步通过 code.But below code doesn't work and throw exception - xpath not found
importBrokerCheckBox = $x(".//div[text()='Брокер']/../../../preceding-sibling::span//span[@aria-label=\"caret-down\"]"),
if (importBrokerCheckBox.isDisplayed());
{
importBrokerCheckBox.click();
}
if (importBrokerSettingsCheckbox.isDisplayed());
{
importBrokerSettingsCheckbox.click();
}
基本上有两种选择:
- try/catch 块 - 如果未找到元素(
NoSuchElementException
发生),则执行 catch 块代码(可以为空 ofc)。 - 如果没有找到元素,则使用
List<WebElement> elements = driver.findElements(By.by);
,不会抛出NoSuchElementException
并且列表保持为空,如new ArrayList<WebElement>()
。