【问题标题】:Support for ES2018 in Cypress tests? (Object spread operator)赛普拉斯测试中是否支持 ES2018? (对象扩展运算符)
【发布时间】:2023-03-27 11:44:01
【问题描述】:

我正在尝试使用 ES2018 语法运行 Cypress 测试:

describe("Cypress test", () => {

  const objA = { a: 1, b: 2 };
  const objB = { ...objA };

  ...
}

但是当执行时,我得到:

SyntaxError: /....../cypress/loginTest.js: Unexpected token (29:17)
  27 | 
  28 |   const objA = { a: 1, b: 2 };
> 29 |   const objB = { ...objA };
     |                  ^

我还尝试使用以下插件检查 browserify 预设:

// plugins.js
const browserify = require("@cypress/browserify-preprocessor");

module.exports = (on) => {
  const options = browserify.defaultOptions;

  // Check presets
  console.log(options.browserifyOptions.transform[1][1].presets);

  on("file:preprocessor", browserify(options));
};

它似乎已经设置了babel-preset-env

有什么想法吗?

【问题讨论】:

    标签: testing cypress


    【解决方案1】:

    不确定这是否会有所帮助,但这对我有用:

    我已经非常轻松地启用了新的 es 功能(包括 扩展运算符),只需使用 cypress-webpack-preprocessor 插件和示例 here

    更多信息可以在这个讨论中找到:https://github.com/cypress-io/cypress/issues/905cypress' documentation

    注意,您还必须将所需的 babel 预设 作为 node 依赖项包含在您的 package.json 文件中并安装它们!

    我也找到了这个预处理器:cypress-babel-esx-preprocessor,但从来没有尝试过,因为 webpacker 解决方案 立即起作用。

    最后,您可能还想观看 this requestcypress 的 Electron 中更新 Chrome 版本,因为它应该启用 es-2018盒子。

    【讨论】:

      猜你喜欢
      • 2022-08-14
      • 2021-10-30
      • 1970-01-01
      • 2019-12-27
      • 2021-12-21
      • 2023-02-14
      • 2018-08-01
      • 1970-01-01
      相关资源
      最近更新 更多