Как заставить testcafe подождать, пока завершится выполнение прибора, перед тем как перейти к следующему при использовании параллелизма? - PullRequest
3 голосов
/ 09 июля 2019

Я хочу запускать тесты testcafe одновременно, НО только для одного файла за раз. Другими словами, я хочу дождаться выполнения всех тестов конкретного прибора до того, как начнутся тесты из следующего прибора. Как мне это сделать?

1 Ответ

4 голосов
/ 10 июля 2019

Вы можете сделать это, используя интерфейс программирования TestCafe .

Пожалуйста, посмотрите следующий пример:

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


createTestCafe('localhost', 1337, 1338)
    .then(tc => {
        testcafe = tc;
        runner   = tc.createRunner()
            .browsers('chrome')
            .concurrency(3);
    })
    .then(() => {
        return runner.src('fixture1.js').run();
    })
    .then(() => {
        return runner.src('fixture2.js').run();
    })
    .then(() => {
        testcafe.close();
    });

Однако, пожалуйста, обратите внимание, что я запускаю тесты дважды впоследовательность здесь.Это означает, что ваши браузеры также будут открыты дважды.Вы также получите два разных отчета.

...