Каратэ - как отправить (записать) журнал из браузера (консоли, Firefox) при возникновении ошибки - PullRequest
1 голос
/ 04 августа 2020

При использовании Каратэ мне нужно получать информацию из консоли браузера (например, Firefox) при возникновении ошибки.

Как я могу сделать это с Каратэ?

1) Есть ли способ сохранить журнал консоли браузера? (или прикрепите его к отчету о функциях)?

В Selenium я использую это для логирования консоли браузера в случае возникновения ошибки:

if (webDriver != null) {
    LogEntries logs = webDriver.manage().logs().get(LogType.BROWSER);
    for (LogEntry entry : logs) {
        LOG.error(entry.getLevel() + " " + entry.getMessage());
    }
}

2) Возможно ли запустить его аналогичным образом, чтобы сделать снимок экрана после сценария?

например (после снимка экрана сценария при возникновении какой-либо ошибки):

конфигурация:

karate.configure('afterScenario', read('afterScenarioScreenshot.js'));

afterScenarioScreenshot. js :

function()
{
if (karate.info.errorMessage) driver.screenshot()
}

Спасибо за любую идею.

1 Ответ

0 голосов
/ 04 августа 2020

Единственное, что у меня есть, это использовать showProcessLog: true в driver config .

Теперь вы должны увидеть любой FireFox процесс (console ) регистрируется в соответствии с отчетом HTML.

Могут быть способы включить подробное ведение журнала по вашему желанию. Обратите внимание, что вы можете добавить параметры командной строки, используя addOptions в driver config: https://firefox-source-docs.mozilla.org/testing/geckodriver/TraceLogs.html

Способ «WebDriver» для переключения уровня журнала - использование возможностей драйвера ". Перейдите по ссылке выше и посмотрите, можете ли вы установить это для FireFox. Было бы хорошо, если бы вы вернули свои выводы, чтобы они помогли другим. В каратэ вы используете webDriverSession для настройки.

Журналы будут в каком-то файле. Вы должны иметь возможность написать некоторый код, чтобы очистить его в любое время во время теста, если они не отображаются в отчете HTML.

Если вам нужно что-то еще, подумайте о добавлении кода.

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