Как закрыть тесткафе бегуна

Я использую Runca Testcafe, чтобы выполнить некоторые тесты, которые я получил. Когда все закончено, консоль продолжает выполнять сценарий навсегда.

Вот мой код:

createTestCafe('localhost', 1337, 1338)
.then(tc => {
    testcafe     = tc;
    runner = testcafe.createRunner();

    return runner
        .src(['offerRefresh.js'])
        .browsers(['nightmare'])
        .screenshots('./screenshots', true)
        .run();
})
.then(failedCount => {
    console.log('Tests failed: ' + failedCount);
    testcafe.close();
});

Консоль остается такой:

Тесты не пройдены: 0

И никогда не закрывает процесс.

1 ответ

Решение

Я воспроизвел проблему. Процесс зависает, если вы запускаете тесты с testcafe-browser-provider-nightmare, Если вы запускаете тесты в локальном браузере, процесс завершается успешно. Я создал проблему в репозитории TestCafe: https://github.com/DevExpress/testcafe/issues/1493. Вы можете подписаться на него, чтобы получать уведомления, когда проблема будет решена. В качестве обходного пути вы можете позвонить process.exit в вашем коде:

...
    .then(failedCount => {
    console.log('Tests failed: ' + failedCount);
    testcafe.close();
    process.exit(failedCount ? 1 : 0);
});

ОБНОВЛЕНО: проблема исправлена ​​в testcafe-browser-provider-nightmare@0.0.5

Другие вопросы по тегам