我正在尝试使用量角器运行js脚本,但我收到了以下错误
C:\Users\Hoodi\AppData\Roaming\npm\node_modules\protractor\built\cli.js:172
throw new Error('Found extra flags: ' + unknownKeys.join(', '));
^
Error: Found extra flags: identityManagement
at Object.<anonymous> (C:\Users\Hoodi\AppData\Roaming\npm\node_modules\protractor\built\cli.js:172:15)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (C:\Users\Hoodi\AppData\Roaming\npm\node_modules\protractor\bin\protractor:5:1)
at Module._compile (module.js:570:32)
我的配置文件
// conf.js
exports.config = {
framework: 'jasmine',
seleniumAddress: 'http://localhost:4444/wd/hub',
useAllAngular2AppRoots: true,
// Options to be passed to Jasmine-node.
jasmineNodeOpts: {
// Use colors in the command line report.
showColors: true,
// Default time to wait in ms before a test fails.
defaultTimeoutInterval: 60000,
},
onPrepare: function() {
require('../../lib/waitReady.js');
},
capabilities :{
browserName : 'chrome',
}
}
console.dir("argv: " + process.argv)
switch(process.argv[3]) {
case '--identityManagement':
exports.config.specs = ['./identityManagement.js'];
break;
default:
exports.config.specs = ['./identityManagement.js'];
}
我尝试使用量角器以及&#34; npm run&#34;执行上述脚本。命令,但在这两种情况下,我得到相同的错误。我用过的命令
protractor ./conf.js --identityManagement
和
npm run im
这实际上适用于我的其他系统。 npm和系统的节点版本
node v7.2.1
npm v3.10.10
哪里不起作用
node v7.4.0
npm v4.0.5
我的package.json文件看起来像这样
{
"name": "intelliflash",
"author": "Vishwanath Rawat <rawat@tegile.com>",
"description": "IntelliFlash tests",
"scripts": {
"im": "protractor ./conf.js --identityManagement"
}
}
请帮忙。
答案 0 :(得分:5)
它与您的npm或节点版本无关, Protractor 5.0 的最新版本已经检查了未识别标志的cli,因为您正在使用帮助process.argv。
您可以通过禁用标记检查来解决此问题:
protractor ./conf.js --identityManagement --disableChecks
有关详细信息,请参阅量角器5.0 changelog
注意: min节点版本现在是v6.9.x,支持这个量角器版本