我试图使用量角器运行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.(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. (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']; }
我尝试使用量角器以及"npm run"命令执行上述脚本,但在这两种情况下我都得到相同的错误.我使用的命令
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", "description": "IntelliFlash tests", "scripts": { "im": "protractor ./conf.js --identityManagement" } }
请帮忙.
它与您的npm或节点版本无关.最新版本的Protractor 5.0已经在您使用process.argv的帮助下检查了cli中未识别的标志.
您可以通过禁用标志检查来解决此问题:
protractor ./conf.js --identityManagement --disableChecks
有关详细信息,请参阅Protractor 5.0 更改日志
注意: min node version现在是v6.9.x,它支持这个版本的量角器