我尝试使用ES2018语法运行赛普拉斯测试:
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
。
请问任何想法?
答案 0 :(得分:1)
不确定这是否有帮助,但这对我有用:
仅使用cypress-webpack-preprocessor
插件和示例here
可以在以下讨论中找到更多信息:https://github.com/cypress-io/cypress/issues/905和赛普拉斯'documentation
注意 ,您还必须在node
中将所需的 babel预设作为package.json
依赖项包括在内文件并安装它们!
我还找到了这个预处理器:cypress-babel-esx-preprocessor,但是从没有尝试过,因为 webpacker解决方案直接起作用了。
最后,您可能还想观看this request在 cypress 的Electron中更新Chrome版本,因为它应该可以启用 es-2018 的盒子。