我设置了一个使用CodeceptJS的新系统并遇到了问题。我按照these注释,但在尝试运行codeceptjs时只是出错。错误是......
codeceptjs
/usr/local/lib/node_modules/codeceptjs-webdriverio/node_modules/codeceptjs/lib/mocha_factory.js:6
let mocha;
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/usr/local/lib/node_modules/codeceptjs-webdriverio/node_modules/codeceptjs/lib/container.js:5:20)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
我的node.js和npm是通过普通的apt-get和npm -g
全局安装的系统信息......
有谁知道这个问题的原因或如何解决它?
就像更新一样,感谢artem for 'use strict';
上的注释,我将它添加到node_modules / codeceptjs / lib / mocha_factory.js的顶部,我想,这让我超越了最初的问题。但是我现在似乎遇到了node_modules / codeceptjs / lib / output.js中的一个问题。错误是......
codeceptjs
/usr/local/lib/node_modules/codeceptjs-nightmare/node_modules/codeceptjs/lib/output.js:139
function print(...msg) {
^^^
SyntaxError: Unexpected token ...
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/usr/local/lib/node_modules/codeceptjs-nightmare/node_modules/codeceptjs/lib/event.js:3:11)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
...我已经尝试了一些方法来解决这个问题,调整那里的打印功能,但还没有运气。
这似乎与codeceptjs-nightmare和codeceptjs-webdriverio元数据包相同。
我会感激任何人的想法,建议或替代方案。
答案 0 :(得分:2)
您的第二个问题是因为过时的Node版本。节点5.12.0及更高版本支持扩展运算符(您看到的...
错误):http://node.green/#ES2015-syntax-spread-------operator
我不确定升级的最佳方式是使用Ubuntu,但这可以解决您的问题。