quasarframework / quasar-testing

Testing Harness App Extensions for the Quasar Framework 2.0+
https://testing.quasar.dev
MIT License
179 stars 66 forks source link

Cannot run Cypress on a new quasar v1 project: cypress.config.js is invalid #336

Closed chiayiliu closed 1 year ago

chiayiliu commented 1 year ago

Software version

OS: Mac 10.14.6 Node:v16.19.0 NPM: 8.19.3

What did you get as the error?

Jennys-MBP:learn-tdd jennyliu$ quasar test --e2e cypress
 App · Running "@quasar/testing" Quasar App Extension...
 App · Running "@quasar/testing" > "test" command

 RUN:  Running e2e tests with cypress

$ cross-env E2E_TEST=true start-test "quasar dev" http-get://localhost:8080 "cypress run"
1: starting server using command "quasar dev"
and when url "[ 'http-get://localhost:8080' ]" is responding with HTTP status code 200
running tests using command "cypress run"

 Dev mode.......... spa
 Pkg quasar........ v1.22.9
 Pkg @quasar/app... v2.4.3
 Debugging......... enabled

 Configured browser support (at least 87.35% of global marketshare):
 · Chrome for Android >= 112
 · Firefox for Android >= 110
 · Android >= 112
 · Chrome >= 103
 · Edge >= 109
 · Firefox >= 103
 · iOS >= 15.0-15.1
 · Opera >= 91
 · Safari >= 15.5

 App · Running "@quasar/testing" Quasar App Extension...
 App · Running "@quasar/testing-e2e-cypress" Quasar App Extension...
 App · Reading quasar.conf.js
 App · Checking listening address availability (0.0.0.0:8080)...
 App · Extension(@quasar/testing-e2e-cypress): Extending quasar.conf...
 App · Transpiling JS (Babel active)
 App · Chaining SPA Webpack config
 App · Generating Webpack entry point
 App · Booting up...

 • Compiling:
 └── SPA ████████████████████ 100% done in 5504 ms

 DONE  Compiled successfully in 5582ms                                            14:32:54

 N  App dir........... /Users/jennyliu/Documents/learn-tdd
    App URL........... http://localhost:8080
    Dev mode.......... spa
    Pkg quasar........ v1.22.9
    Pkg @quasar/app... v2.4.3
    Transpiled JS..... yes (Babel)

ℹ 「wds」: Project is running at http://0.0.0.0:8080/
ℹ 「wds」: webpack output is served from 
Couldn't find tsconfig.json. tsconfig-paths will be skipped
Your configFile is invalid: /Users/jennyliu/Documents/learn-tdd/cypress.config.js

It threw an error when required, check the stack trace below:

Error: Cannot find module '@quasar/quasar-app-extension-testing-e2e-cypress/cct-dev-server'
Require stack:
- /Users/jennyliu/Documents/learn-tdd/cypress.config.js
- /Users/jennyliu/Library/Caches/Cypress/12.11.0/Cypress.app/Contents/Resources/app/packages/server/lib/plugins/child/run_require_async_child.js
- /Users/jennyliu/Library/Caches/Cypress/12.11.0/Cypress.app/Contents/Resources/app/packages/server/lib/plugins/child/require_async_child.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:995:15)
    at Function.Module._resolveFilename.sharedData.moduleResolveFilenameHook.installedValue [as _resolveFilename] (/Users/jennyliu/Library/Caches/Cypress/12.11.0/Cypress.app/Contents/Resources/app/node_modules/@cspotcode/source-map-support/source-map-support.js:811:30)
    at Function.Module._load (node:internal/modules/cjs/loader:841:27)
    at Module.require (node:internal/modules/cjs/loader:1067:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at Object.<anonymous> (/Users/jennyliu/Documents/learn-tdd/cypress.config.js:2:41)
    at Module._compile (node:internal/modules/cjs/loader:1165:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
    at Module.load (node:internal/modules/cjs/loader:1043:32)
    at Function.Module._load (node:internal/modules/cjs/loader:878:12)
    at Module.require (node:internal/modules/cjs/loader:1067:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at loadFile (/Users/jennyliu/Library/Caches/Cypress/12.11.0/Cypress.app/Contents/Resources/app/packages/server/lib/plugins/child/run_require_async_child.js:89:14)
    at EventEmitter.<anonymous> (/Users/jennyliu/Library/Caches/Cypress/12.11.0/Cypress.app/Contents/Resources/app/packages/server/lib/plugins/child/run_require_async_child.js:116:38)
    at EventEmitter.emit (node:events:513:28)
    at EventEmitter.emit (node:domain:489:12)
Error: Command failed with exit code 1: cypress run
    at makeError (/Users/jennyliu/Documents/learn-tdd/node_modules/start-server-and-test/node_modules/execa/lib/error.js:60:11)
    at handlePromise (/Users/jennyliu/Documents/learn-tdd/node_modules/start-server-and-test/node_modules/execa/index.js:118:26)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  shortMessage: 'Command failed with exit code 1: cypress run',
  command: 'cypress run',
  escapedCommand: '"cypress run"',
  exitCode: 1,
  signal: undefined,
  signalDescription: undefined,
  stdout: undefined,
  stderr: undefined,
  failed: true,
  timedOut: false,
  isCanceled: false,
  killed: false
}

What were you expecting?

e2e tests run successfully.

What steps did you take, to get the error?

quasar ext add @quasar/testing@qv1 quasar test --e2e cypress but an error said : App · ⚠️ Extension(@quasar/testing-e2e-cypress): is not compatible with quasar v1.22.9. Required version: ^2.0.0 so I uninstalled Cypress quasar ext remove @quasar/testing-e2e-cypress@qv1 and reinstalled quasar ext add @quasar/testing-e2e-cypress@qv1 and run again quasar test --e2e cypress but got Error: Cannot find module '@quasar/quasar-app-extension-testing-e2e-cypress/cct-dev-server'

IlCallo commented 1 year ago

Hey there, there's a disclaimer about it exactly in the first line of the AE docs image

As the error is telling you, latest versions of Cypress AE don't support Qv1 Qv1 will reach end of life in approximately 1 month, I'd strongly suggest you to avoid creating new projects using it