使用 Typescript 和 cypress-select-tests 配置 Cypress

问题描述

我正在尝试结合在 TypeScript 中编写 Cypress 测试,同时还使用 cypress-select-tests 插件(以便能够 grep 运行测试)。

当我的测试是在我的 plugins/index.js 中使用它用 JS 编写时,我运行了 cypress-select-tests

module.exports = (on,config) => {
  initPlugin(on,config);
  on('file:preprocessor',selectTests(config,pickTests));
  return config
};

此后我将测试更改为使用 TypeScript(使用 browserify 预处理器),但测试 grepping 不再有效。 为了添加 TypeScript,我添加了这个,但是在此更改之后,测试 grepping 不再有效:

on('file:preprocessor',browserify({
  typescript: require.resolve('typescript')
}));

我的 index.js 现在看起来像下面这样 - 取自 https://github.com/bahmutov/cypress-select-tests/blob/master/test/plugin-browserify-with-grep.js,并添加options.typescript 行中,但现在它因此错误而失败 SyntaxError: 'import' and 'export' may appear only with 'sourceType: module' (17:0)

module.exports = (on,config);

  let custombrowserify;

  // we need custom browserify transformation
  on('before:browser:launch',(browser = {}) => {
    const options = browserify.defaultOptions
    const envPreset = options.browserifyOptions.transform[1][1].presets[0]
    options.browserifyOptions.transform[1][1].presets[0] = [
      envPreset,{
        ignorebrowserslistConfig: true,targets: { [browser.name]: browser.majorVersion }
      }
    ];

    options.typescript = require.resolve('typescript');

    // notice how we add OUR select tests transform to the list of browserify options
    options.browserifyOptions.transform.push(itify(config,pickTests))
    custombrowserify = browserify(options)
  })

  on('file:preprocessor',file => custombrowserify(file));

  return config;
};

关于如何将该插件与用 TypeScript 编写的测试相结合的任何建议?如果可行,可以使用不同的 TS 预处理器。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)