Обработка нажатия в модальном окне

205
02 июня 2018, 19:30

Всем доброго дня. Возникла проблема. Есть модальное окно, с 1 одной кнопкой "Да" и ссылкой "Нет". Данное окно появляется только при условии если форма была некорректно заполнена, вызвана и не заполнена, был сбой во время заполнения формы. В остальных случаях данное окно не появляется. Не могу написать метод который перехватывает данное модальное окно. У меня тест, который работает с формой, перед заполнением формы необходимо проверять появляется данное модельное окно или нет, если не появилось приступаем к заполнению формы, если появилось нажимаем на ссылку Нет (это приведет к закрытию формы) и приступаем к заполнению формы. Я использую Selenide. Если я использую первый вариант кода, всегда идет проверка в последнем блоке else

private boolean isElementDisplay(SelenideElement element) {
            try {
                return element.isEnabled();
            } catch (NoSuchElementException e) {
                return false;
            }
        }
        public void draftForm() {
            if ($("локатор_ссылки").is(Condition.enabled)) {
                if (isElementDisplay($("локатор_ссылки"))) {
                    if (($("локатор_ссылки").isEnabled())) {
                        $("локатор_ссылки").click();
                    }
                }
            } else {

Продолжаем заполнять форму
        }

Однако если я использую данный вариант кода

private boolean isElementDisplay(SelenideElement element) {
        try {
            return element.isEnabled();
        } catch (NoSuchElementException e) {
            return false;
        }
    }
    public void draftForm() {
        if (isElementDisplay($x("локатор_ссылки"))) {
            if (($("локатор_ссылки").isEnabled())) {
                $x(("локатор_ссылки")).click();
         Заполняем форму
            } else {
        Заполняем форму
            }
        }
    } 

Ссылка на модальном окне всегда нажимается, т.е модальное окно обрабатывается, но если модальное окно не появляется, тест падает с ошибкой не найденного локатора модального окна. Заранее благодарен за подсказки.

READ ALSO
JSON массив в виде строки в byte[]

JSON массив в виде строки в byte[]

Подскажите может есть более лучший способ перегнать такое "[1,2,3,4,5,6,7,8,

214
Множественный выбор в ExpandableListView

Множественный выбор в ExpandableListView

В разметку активности добавил ExpandableListViewКак я могу добавить множественный выбор для каждого элемента подгруппы и впоследствии добавлять...

177
IoC-контейнер spring и обращение через интерфейсы

IoC-контейнер spring и обращение через интерфейсы

Присутствует класс IndexMatrix и он имплемитирует интерфейс IMatrix:

189
Сохранение и вывод данных

Сохранение и вывод данных

Есть 3 поля с даными, вводимыми пользователями: имя, дата рождения, место рождениянадо записать эти данные в файл а потом из файла запихнуть...

209