Браузеры Chrome остаются открытыми во время запуска «фальшивого параллелизма» с TestCafe - PullRequest
1 голос
/ 02 апреля 2019

В настоящее время я использую TestCafe в качестве основной платформы тестирования в моей компании.Недавно я столкнулся с проблемой: у нас есть разработанный конвейер, который запускает тесты параллельно, но не так, как должен работать Testcafe.

Я знаю, что testcafe может обрабатывать параллелизм при одновременном выполнении теста следующим образом:

testcafe -c 3 chrome tests / test.js

Однако наш конвейер воспроизводит каждый тест testcafeв своем браузере без использования процедуры параллельного выполнения теста.Результатом является то, что в конце выполнения у нас в диспетчере задач по-прежнему открыто МНОГО браузеров Chrome.Я не знаю, как справиться с этой проблемой ... Я уже пытался вставить какой-то код о window.close () в "aftereach" моих приборов, но это не работает ...

У меня естьОтметим, что выполнение одного теста за раз не дает такого эффекта, и все браузеры Chrome закрыты правильно.

Спасибо за вашу помощь!

Sylvain

Это код, который выполняется:


execution {

    String nodejsPath = pathfileOfTestDirectory("nodejs/")
    String nodejsModulePath = nodejsPath + "/lib/node_modules"
    String npmPath = pathfileOfTestDirectory("nodejs/npm.cmd")

    new File(resultDir).mkdirs();
    logcatoutput resultDir + "logcat.log"
    inDirectory pathfileOfTestDirectory("tests-e2e")
    within 60, TimeUnit.MINUTES

    env "Path", readEnv("Path") + ";" + nodejsPath
    env "NODE_PATH", nodejsModulePath

    String browserPath;

    switch(browser) {
        case "firefox":
            //browserPath = pathfileOfTestDirectory("/resources/browsers/firefox/firefox.exe")
            browserPath = pathfileOfTestDirectory("/resources/browsers/chrome/Application/chrome.exe")
            break
        case "chrome" :
            browserPath = pathfileOfTestDirectory("/resources/browsers/chrome/Application/chrome.exe")
            break
    }


    command npmPath, "run",
            "testcafe",
            "--scripts-prepend-node-path",// ensure the nodejs installation of the workspace is used
            "--",
            "path:`${browserPath}`",
            "testcafe/",
            "--targetEnv=" + targetEnv,
            "--targetPage=" + targetPage,
            "--test=\"${testName}\"", "-q",
            "-r", "json:${resultDir}result.json",
            "-s", "${resultDir}"

    logger.info("Execution done")


}
...