【问题标题】:How do I use harmony_async_iteration with jest?如何将 Harmony_async_iteration 与 jest 一起使用?
【发布时间】:2018-01-07 18:21:44
【问题描述】:

我想在一个使用异步迭代而不使用 babel 的节点项目中测试代码。

基于https://github.com/facebook/jest/issues/2485,我尝试使用node --harmony_async_iteration ./node_modules/.bin/jest 运行jest。但是,我仍然在使用异步迭代语法的模块中看到语法错误。 node 命令行选项无效,好像 jest 为 test runner 生成了一个新进程,没有使用--harmony_async_iteration。

我的异步迭代源文件在使用--harmony_async_iteration 由节点加载(没有开玩笑)时被解析且没有错误。

【问题讨论】:

    标签: node.js jestjs


    【解决方案1】:

    Babel 是 jest 不可或缺的一部分。没有必要使用 babel 来编译你的应用程序以供非测试使用,但绝对必须配置 babel 以允许异步生成器与 jest 一起工作。

    安装 babel-plugin-transform-async-generator-functions:

    npm install --save-dev babel-plugin-transform-async-generator-functions
    

    或

    yarn add --dev babel-plugin-transform-async-generator-functions
    

    通过创建 .babelrc 文件来激活插件(或添加到文件中):

    { "plugins": ["transform-async-generator-functions"] }
    

    现在您的笑话测试应该可以使用异步生成器了。

    【讨论】:

      猜你喜欢
      • 2021-09-17
      • 2018-06-14
      • 2017-10-31
      • 2018-04-04
      • 2021-06-18
      • 2019-06-08
      • 2021-10-27
      • 1970-01-01
      • 2018-08-09
      相关资源
      最近更新 更多