Оператор Catch не выполняется в обработке исключений XPath - PullRequest
0 голосов
/ 27 марта 2019

У меня есть тестовый пример пользовательского интерфейса в Java, который идентифицирует текстовое поле userName и вводит в него некоторое значение. Я пытаюсь реализовать блок try-catch, чтобы в случае сбоя блока try он выполнял блок catch. Но мой код вообще не выполняет блок catch.

Я попытался использовать console.log или assert.fail в блоке catch, чтобы проверить, печатает ли оно сообщение. Но выполнение не перехватывает блокировку, и браузер закрывается сразу после сбоя блока try.

try {
//retrieves Xpath of userName which is incorrect.
            return browser.setValue(this.getSelector("login_userId_txtbox"), datatablevalue.userName);
        } catch (er) {
            //assert.fail("UserId xpath is incorrect", er);
            return console.log("------>error in XPATH", er);
        }

Фактический результат: блок catch никогда не выполняется.

Ожидаемый результат: Если xpath не совпадает, он должен напечатать сообщение console.log в блоке catch.

1 Ответ

2 голосов
/ 27 марта 2019

Когда выражение XPath ничего не выбирает, оно возвращает пустой набор узлов. Это не ошибка, поэтому не возникает исключение. Это обычный результат, который вам нужно проверить.

...