执行以下错误消息时,步骤定义文件未拾取。
Unhandled rejection Error: Cannot find module 'ts-node/register'
at Function.Module._resolveFilename (module.js:485:15)
at Function.Module._load (module.js:437:25)
at Module.require (module.js:513:17)
at require (internal/module.js:11:18)
at /Users/Scope/node_modules/cucumber/src/cli/configuration_builder.js:137:7
at Array.forEach (native)
at ConfigurationBuilder.<anonymous> (/Users/Scope/node_modules/cucumber/src/cli/configuration_builder.js:134:27)
at Generator.next (<anonymous>)
at Generator.tryCatcher (/Users/Scope/node_modules/bluebird/js/release/util.js:16:23)
at PromiseSpawn._promiseFulfilled (/Users/Scope/node_modules/bluebird/js/release/generators.js:97:49)
at ConfigurationBuilder.<anonymous> (/Users/Scope/node_modules/bluebird/js/release/generators.js:201:15)
at ConfigurationBuilder.expandSupportCodePaths (/Users/Scope/node_modules/cucumber/lib/cli/configuration_builder.js:225:22)
at ConfigurationBuilder.<anonymous> (/Users/Scope/node_modules/cucumber/src/cli/configuration_builder.js:36:37)
at Generator.next (<anonymous>)
at Generator.tryCatcher (/Users/Scope/node_modules/bluebird/js/release/util.js:16:23)
at PromiseSpawn._promiseFulfilled (/Users/Scope/node_modules/bluebird/js/release/generators.js:97:49)
量角器.config.js 文件:
const path = require('path');
exports.config = {
directConnect: true,
baseUrl: 'https://www.google.com',
capabilities: {
browserName:'chrome'
},
framework: 'custom',
frameworkPath: require.resolve('protractor-cucumber-framework'),
// frameworkPath: require.resolve('serenity-js'),
specs: [
'./e2e/features/*.feature'
],
cucumberOpts: {
compiler: 'ts:ts-node/register',
require: [
"./e2e/features/step_definitions/*_step.ts",
// path.resolve(process.cwd(), './e2e/step_definitions/Test_step.ts')
],
tags: '@Test',
strict: false,
format: ["pretty", "json:report/json/cucumber_report.json"],
dryRun: false,
},
onPrepare: function () {
project: "./e2e/tsconfig.e2e.json";
browser.driver.manage().window().maximize();
}
};
我已经在堆栈溢出中尝试了该建议,但它对我不起作用。
- 黄瓜版本:3.0.6
- 节点版本:8.2.1
- 量角器版本:5.2.0
需要
安装ts-node,因为Cucumber正在require
这一点。
npm install ts-node