TheBrainFamily / cypress-cucumber-example

Example of using Cypress with Cucumber
MIT License
195 stars 120 forks source link

Not compatible with the latest Cypress and Cucumber Preprocessor versions #34

Open rakeshnambiar opened 1 year ago

rakeshnambiar commented 1 year ago

I have updated the dependency as follows by cloning this repository and tried to run the tests. I have also open the Cypress and migrated the config and other files to proceed further.

  "dependencies": {
    "cypress": "^12.0.2",
    "cypress-cucumber-preprocessor": "^4.3.1"
  }

But ended up with the getting the below errors.

> cypress-cucumber-example@1.0.0 test
> cypress run --spec "**/*.feature"

Warning: We failed to trash the existing run results.

This error will not alter the exit code.

Error: spawn Unknown system error -86
    at ChildProcess.spawn (node:internal/child_process:413:11)
    at spawn (node:child_process:709:9)
    at execFile (node:child_process:336:17)
    at node:child_process:243:21
    at node:electron/js2c/asar_bundle:5:3131
    at s.exports (<embedded>:1372:1011480)
    at <embedded>:1372:1019740
    at <embedded>:1358:431521
    at new Promise (<anonymous>)
    at r (<embedded>:1358:431502)
    at p (<embedded>:1372:1019248)
    at <embedded>:2837:406870
    at tryCatcher (/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/util.js:16:23)
    at MappingPromiseArray._promiseFulfilled (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/map.js:61:38)
    at MappingPromiseArray.<anonymous> (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/promise_array.js:114:31)
    at MappingPromiseArray.init (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/promise_array.js:78:10)
    at Promise._settlePromise (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/promise.js:566:21)
    at Promise._settlePromise0 (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/promise.js:694:18)
    at Promise._fulfill (~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/promise.js:638:18)
    at ~/Library/Caches/Cypress/12.0.2/Cypress.app/Contents/Resources/app/node_modules/bluebird/js/release/nodeback.js:42:21
    at <embedded>:219:98304
    at <embedded>:2844:18778
    at FSReqCallback.oncomplete (node:fs:188:23)

====================================================================================================

  (Run Starting)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Cypress:        12.0.2                                                                         │
  │ Browser:        Electron 106 (headless)                                                        │
  │ Node Version:   v19.2.0 (/opt/homebrew/Cellar/node/19.2.0/bin/node)                            │
  │ Specs:          1 found (Google.feature)                                                       │
  │ Searched:       **/*.feature                                                                   │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘

────────────────────────────────────────────────────────────────────────────────────────────────────

  Running:  Google.feature                                                                  (1 of 1)

Your configFile threw an error from: cypress.config.js

We stopped running your tests because your config file crashed.

Error: We've tried to resolve your step definitions at cypress/integration, but that doesn't seem to exist. As of version 2.0.0 it's required to set step_definitions in your cypress-cucumber-preprocessor configuration. Look for nonGlobalStepDefinitions and add stepDefinitions right next to it. It should match your cypress configuration has set for integrationFolder. We no longer rely on getting information from that file as it was unreliable and problematic across Linux/MacOS/Windows especially since the config file could have been passed as an argument to cypress.
    at module.exports (~/GitHub/cypress-cucumber-example/node_modules/cypress-cucumber-preprocessor/lib/stepDefinitionPath.js:20:15)
    at getStepDefinitionsPaths (~/GitHub/cypress-cucumber-example/node_modules/cypress-cucumber-preprocessor/lib/getStepDefinitionsPaths.js:14:46)
    at module.exports (~/GitHub/cypress-cucumber-example/node_modules/cypress-cucumber-preprocessor/lib/loader.js:25:36)
    at Stream.end (~/GitHub/cypress-cucumber-example/node_modules/cypress-cucumber-preprocessor/lib/index.js:24:18)
    at _end (~/GitHub/cypress-cucumber-example/node_modules/through/index.js:65:9)
    at Stream.stream.end (~/GitHub/cypress-cucumber-example/node_modules/through/index.js:74:5)
    at DestroyableTransform.onend (~/GitHub/cypress-cucumber-example/node_modules/readable-stream/lib/_stream_readable.js:577:10)
    at Object.onceWrapper (node:events:627:28)
    at DestroyableTransform.emit (node:events:525:35)
    at endReadableNT (~/GitHub/cypress-cucumber-example/node_modules/readable-stream/lib/_stream_readable.js:1010:12)
    at processTicksAndRejections (node:internal/process/task_queues:82:21)
rakeshnambiar commented 1 year ago

@lgandecki @sawasawasawa Please could you help?

goaloridee commented 1 year ago

Looks as though it's maybe not being maintained anymore, questions from this past year have gone unanswered.

I don't believe this code has been adjusted to work with the new cypress config file. Cypress past version 10 I believe has 'cypress.config.ts' as it's config file - it's no longer 'cypress.json'.