在Ubuntu上使用CodeceptJS的安装问题

时间:2017-04-28 11:21:33

标签: node.js npm npm-install codeceptjs

我设置了一个使用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

全局安装的

系统信息......

  • Ubuntu 17.04 x86_64
  • nodejs:4.7.2
  • npm:4.5.0
  • bash 4.4.5

有谁知道这个问题的原因或如何解决它?

就像更新一样,感谢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元数据包相同。

我会感激任何人的想法,建议或替代方案。

1 个答案:

答案 0 :(得分:2)

您的第二个问题是因为过时的Node版本。节点5.12.0及更高版本支持扩展运算符(您看到的...错误):http://node.green/#ES2015-syntax-spread-------operator

我不确定升级的最佳方式是使用Ubuntu,但这可以解决您的问题。