javascript - 如何测试harmony/ES6/ECMAScript 6 JavaScript?

标签 javascript mocha.js intern ecmascript-6 ecmascript-harmony

根据标题,我正在尝试测试一些用 ES6 JS 编写的 AMD 模块,从 nodejs 运行。

我首先尝试使用 Intern :即使在 nodejs 中启用 --harmony 之后,我最终还是面临着 Intern 的依赖链,我无法在其中启用 Harmony,例如Istanbulesprima 和其他地方(我为此打开了一个 issue)。

然后我转到了 mocha ,我被困在这里……很奇怪。我为 nodejs 和 mocha 本身启用了 Harmony,这里是 package.json 测试脚本:

"test": "node --harmony node_modules\\mocha\\bin\\mocha tests --harmony --recursive"

我从命令提示符运行 npm test my_test_folder。尽管如此,一些 ES6 结构(如 const)仍然可以通过,但随后它会在解构赋值时阻塞。这是第一行输出:

const { log, dir } = require('../consoleLogger.js');
      ^
SyntaxError: Unexpected token {
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    [...continues...]

我也检查过这个 SO thread并听说过转译器,但我真的不知道它们是否可以工作,我现在正在尝试让转译器在这种情况下工作。

关于如何解决这个问题的任何想法,而不是改变代码中传播的所有 ES6 位?助教。

最佳答案

我一直在用

npm install mocha-traceur

mocha ./tests/* --compilers js:mocha-traceur 

它的效果非常好!

关于javascript - 如何测试harmony/ES6/ECMAScript 6 JavaScript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26304517/

相关文章:

javascript - 阿拉伯语本地化

检查变量长度时,Javascript "Cannot read property ' length' of undefined"

javascript - 如何正确呈现使用 jQuery 插件的部分模板?

javascript - 使用 jQuery 将 json 值返回到表单字段

javascript - Node.js Istanbul/Mocha 单元测试不打印详细信息

javascript - Dojo 版本和 Intern 兼容性

mocha.js - 当测试失败时,chai 总是给我一个堆栈跟踪。即使我说 chai.config.includeStack = false

javascript - Mocha 测试设置运行两个需要相同 beforeEach 设置的测试

testing - 如何使用intern js调试功能测试

ios - 无法使用 Leadfoot/Intern 找到 FindByXpath