Cypress 与 Browserstack 并行运行

问题描述

我正在尝试使用 browserstack 运行 Cypress BDD 测试套件,但我一直收到此错误 CYPRESS_RUN_FailedCypress 无法运行。隐藏堆栈跟踪 [-] 插件文件丢失或无效。

您的 pluginsFile 设置为 .\cypress\plugins\index.js,但是 文件丢失、包含语法错误或抛出错误 在需要的时候。 pluginsFile 必须是 .js.ts.coffee 文件

或者您可能已经重命名pluginsFile 的扩展名。如果 就是这样,重启测试运行器。

请修复此问题,如果插件文件是 您的项目不需要。

错误:找不到模块“cypress-cucumber-preprocessor”需要 堆栈:

  • .\cypress\plugins\index.js
  • \cypress_package\4.12.1\app\packages\server\lib\plugins\child\run_plugins.js
  • \cypress_package\4.12.1\app\packages\server\lib\plugins\child\index.js 在 Function.Module._resolveFilename (internal/modules/cjs/loader.js:798:15) 在 Module._load (internal/modules/cjs/loader.js:691:27) 在 Module._load (electron/js2c/asar.js:717:26) 在 Function.Module._load (electron/js2c/asar.js:717:26) 在 Module.require (internal/modules/cjs/loader.js:853:19) 在要求 (internal/modules/cjs/helpers.js:74:18) 在对象。 (.\cypress\plugins\index.js:2:18) 在 Module._compile (internal/modules/cjs/loader.js:968:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:986:10) 在 Module.load (internal/modules/cjs/loader.js:816:32) 在 Module._load (internal/modules/cjs/loader.js:728:14) 在 Module._load (electron/js2c/asar.js:717:26) 在 Function.Module._load (electron/js2c/asar.js:717:26) 在 Module.require (internal/modules/cjs/loader.js:853:19) 在要求 (internal/modules/cjs/helpers.js:74:18) 在 module.exports (\cypress_package\4.12.1\app\packages\server\lib\plugins\child\run_plugins.js:208:15)

cypress run process exited with code 1 cypress run Failed,exiting 带代码:1

按照答案建议后,似乎无法读取我的 stepDef 和 Page 类文件enter image description here

解决方法

从堆栈跟踪中,我看到:

Cannot find module 'cypress-cucumber-preprocessor' Require stack

看起来您缺少依赖项。

Cypress 在 BrowserStack 上的执行要求您在 browserstack.json 文件中明确提及测试所需的 npm 包。

这里是文档链接:https://www.browserstack.com/docs/automate/cypress/npm-packages