Селен: проверьте наличие элемента в любой момент времени - PullRequest
0 голосов
/ 24 мая 2018

Я ищу какой-нибудь тег огурца, такой как @During, где он проверяет наличие элемента в любой момент времени. Например, этот код будет выполняться на всех строках моего теста и в случае появления предупреждения, я хочу сделать несколькодействие по этому вопросу.

public boolean isAlertPresent() {

    boolean presentFlag = false;

    try {

        // Check the presence of alert
        Alert alert = this.getDriver().switchTo().alert();
        // Alert present; set the flag
        presentFlag = true;
        // if present consume the alert
        alert.accept();
        //( Now, click on ok or cancel button )

    } catch (NoAlertPresentException ex) {
        // Alert not present
        ex.printStackTrace();
    }

    return presentFlag;
}

1 Ответ

0 голосов
/ 24 мая 2018

Вы можете создать класс, который реализует интерфейс WebDriverEventListener .Этот интерфейс позволяет создавать до и после перехватов для всех видов событий, таких как afterClickOn, afterFindBy, afterAlertAccept и т. Д. Это позволит вам вызывать ваш метод isAlertPresent() в одном из этих перехватчиков событий и иметь дело с всплывающим окном каждый раз, когда ваш скрипт встречает его.В качестве альтернативы вы можете иметь свой класс extension AbstractWebDriverEventListener абстрактный класс, если вам не нужно реализовывать все ловушки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...