Решение для достижения этой цели:
1) Создайте отдельный файл config.js
, который будет обрабатывать ваши пользовательские параметры командной строки:
import * as minimist from 'minimist';
const args = minimist(process.argv.slice(2));
// get the options --env=xxx --user=yyy from the command line
export const config = {
env: args.env,
user: args.user,
};
2) В вашем тестовом файле:
удалить любой код вне методов fixture
и test
.
импортировать файл конфигурации и внедрить его в контексте TestController
получить аргументы команды черезконтекст TestController
import 'testcafe';
import { Selector } from 'testcafe';
import { config } from './config';
fixture('Getting Started')
.beforeEach(async (t) => {
// inject config in the test context
t.ctx.currentConfig = config;
});
test('My first test', async (t) => {
// retrieve cli args from the test context
const currentConfig = t.ctx.currentConfig;
console.log(`env=${currentConfig.env}`);
});