У меня есть установка protractor
с несколькими браузерами, настроенными через multiCapabilities
, выполняющиеся тесты на браузере.Обработка неизвестных ошибок в транспортирторе
Один из моих ключевых спецификаций транспортир/тесты содержат следующий afterEach()
блок:
afterEach(function() {
browser.manage().logs().get("browser").then(function (browserLog) {
expect(browserLog.length).toEqual(0);
});
});
, который проверяет, что консоль браузера пуст (без ошибок на консоли).
Проблема заключается в том: когда я запускаю эту спецификацию против Internet Explorer, я получаю UnknownError
:
UnknownError: Command not found: POST /session/6b838fe8-f4a6-4b31-b245-f4bf8f37537c/log
После быстрого исследования, я обнаружил, что IE selenium webdriver
еще не поддерживает сеанс журналы:
Вопрос в следующем: Как я могу поймать этот UnknownError
и передать пропуск в случае этой конкретной ошибки?
Или, чтобы включить его, возможно ли иметь возможность блокировки блока afterEach()
/с учетом браузера или знать, какая в данный момент возможность работы?
Я пытался использовать try/catch
и попытаться полагаться на исключение sender
, но console.log()
не выполняется:
afterEach(function() {
try {
browser.manage().logs().get("browser").then(function (browserLog) {
expect(browserLog.length).toEqual(0);
});
}
catch (e) {
console.log(e.sender);
}
});
В качестве обходного пути, я дублировать ту же спецификацию, но без этого не суметь afterEach()
блок, особенно для Internet Explorer.