如果找不到该项目,我该如何忽略异常?硒(硒化物)

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();
    }

基本上有两种选择:

  1. try/catch 块 - 如果未找到元素(NoSuchElementException 发生),则执行 catch 块代码(可以为空 ofc)。
  2. 如果没有找到元素,则使用 List<WebElement> elements = driver.findElements(By.by);,不会抛出 NoSuchElementException 并且列表保持为空,如 new ArrayList<WebElement>()