Как получить код выхода testCafe

У меня проблема с запуском Testcafe через огурец. по какой-то причине, когда я запускаю testCafe через огурец, процесс всегда завершается с кодом выхода 0 даже в случае сбоя теста.

Если я пропущу кукольника через огурец, у меня не будет этой проблемы. Я думаю, что такое поведение связано с тем, как у меня все настроено в моем файле хуков, где я неправильно интерпретирую код выхода из тестового кафе.

В моем файле хуков я создаю бегун testCafe и в моем хуке Before, а затем закрываю его во время моего хука after.

Мне интересно, какую команду я мог бы использовать для получения кода выхода TestCafe, но я не смог найти никакой информации по этому поводу.

Например, код выхода возвращается из функции закрытия или как?


person switch201    schedule 17.07.2019    source источник


Ответы (1)


TestCafe API не вызывает метод process.exit, поскольку он должен работать внутри сценариев пользовательских узлов.

TestCafe вызывает process.exit только в CLI.

Я предполагаю, что вы хотите получить информацию о неудачных тестах в API. Эту информацию возвращает метод runner.run. . См. Следующий пример:

const createTestCafe = require('testcafe');
let runner           = null;
let tc               = null;

createTestCafe('localhost', 1337, 1338)
    .then(testcafe => {
        tc     = testcafe;
        runner = tc.createRunner();
    })
    .then(() => {
        return runner
            .src('...')
            .browsers('chrome')
            .run();
    })
    .then(failedCount => {
        console.log(failedCount)

        return tc.close();
    });

Здесь вы можете вызвать process.exit, если обнаружите, что failedCount ›0;

person Alex Kamaev    schedule 18.07.2019
comment
Спасибо. Я попробую это сделать, когда у меня будет возможность, и вернусь сюда, чтобы обновить - person switch201; 18.07.2019
comment
Я знаю, что прошло около 2 месяцев, но я все еще не дошел до того, чтобы попробовать это ... просто отвлекся от других вещей, но я все еще могу принять это как ответ (так как это, вероятно, единственный, который я получу этот момент) еще раз спасибо, и я вернусь и оставлю комментарий, если что-то не сработает, когда я попробую - person switch201; 06.09.2019