runca testcafe, чтобы позволить значения командной строки - PullRequest
1 голос
/ 07 мая 2019

У меня есть бегун тестового кафе, определенный как

  const createTestCafe = require('testcafe');
  const glob = require('glob');

  let runner = null;
  let testcafe = null;

  const getTests = suite => {
        return new Promise(resolve => {
       glob(suite, (er, files) => resolve(files));
       });
   };

 const runTest = suite => {
    createTestCafe()
    .then(tc => {
        testcafe = tc;
        runner = testcafe.createRunner();
    })
    .then(() => {
        return getTests(suite);
    })
    .then(testFiles => {
        runner
            .src(testFiles)
            .browsers('chrome')
            .run()
            .then(failedCount => {
                console.log(failedCount);
                testcafe.close();
            });
    });
}

const suites = {
    suite1: 'src/tests/1.spec.ts',
        'src/tests/2.spec.ts, 
    suite2: 'src/tests/3.spec.ts',
 };

runTest(suites.suite1);

Как передать имя комплекта, имя браузера и т. Д. Из командной строки, т. Е. Прямо сейчас комплект1 жестко закодирован, но я хочу выбрать имя комплекта из командной строки, например

  node testCafeRunner --suite suite2 --browser firefox

Как мне это сделать?

Кроме того, если мне придется беспокоиться .testcaferc.json и runner, тест-кафе будет смотреть на оба?

1 Ответ

1 голос
/ 08 мая 2019

Вы можете передать аргументы nodejs следующим образом:

node testCafeRunner.js --suite=suite2 --browser=firefox

В testCafeRunner.js:

var argv = require('minimist')(process.argv.slice(2));
 
const suite = argv.suite;
const browser = argv.browser;

Настройки, которые вы указываете при запуске TestCafe из командной строки, а программные интерфейсы переопределяют настройки из файла конфигурации (.testcaferc.json). TestCafe печатает информацию о каждом переопределенном свойстве в консоли.

См. Также :

Как передать аргументы командной строки в программу Node.js?

nodejs process.argv

https://www.npmjs.com/package/minimist

Файл конфигурации TestCafe

...