Не удается поймать NoSuchElementException с помощью Selenide

Я пытаюсь поймать NoSuchElementException. Это мой код:

public void checkActiveApps() {
    try {
        $(BUTTON).click();
    } catch (org.openqa.selenium.NoSuchElementException e) {
        System.out.println(e);
    }
}

Но исключение все равно выбрасывается. Как это поймать?

Это журнал:

Element not found {button[role='checkbox']}
Expected: visible
Screenshot: file:/Users/user/source/project/build/reports/tests/1537866631954.0.png
Page source: file:/Users/user/source/project/build/reports/tests/1537866631954.0.html
Timeout: 4 s.
Caused by: NoSuchElementException: Unable to locate element: button[role='checkbox']
    at com.codeborne.selenide.impl.WebElementSource.createElementNotFoundError(WebElementSource.java:31)
    at com.codeborne.selenide.impl.ElementFinder.createElementNotFoundError(ElementFinder.java:82)
    at com.codeborne.selenide.impl.WebElementSource.checkCondition(WebElementSource.java:59)
    at com.codeborne.selenide.impl.WebElementSource.findAndAssertElementIsVisible(WebElementSource.java:72)
    at com.codeborne.selenide.commands.Click.execute(Click.java:16)
    at com.codeborne.selenide.commands.Click.execute(Click.java:12)
    at com.codeborne.selenide.commands.Commands.execute(Commands.java:144)
    at com.codeborne.selenide.impl.SelenideElementProxy.dispatchAndRetry(SelenideElementProxy.java:90)
    at com.codeborne.selenide.impl.SelenideElementProxy.invoke(SelenideElementProxy.java:65)

Я использую селенид версии 4.12.3


person IKo    schedule 25.09.2018    source источник


Ответы (1)


Selenide не выбрасывает исключения Selenium, так как использует свои собственные.

Вы можете попробовать использовать:

public void checkActiveApps() {
    try {
        $(BUTTON).click();
    } catch (com.codeborne.selenide.ex.ElementNotFound e) {
        System.out.println(e);
    }
}

Почему вы хотите поймать его в любом случае?

person Maciek    schedule 19.11.2018
comment
если он бросает свой собственный, почему его нельзя увидеть в терминале/консоли? Это сбивает с толку! - person George Pligoropoulos; 27.08.2020