Skip to content

Firefox 124 + Cypress 13.7.1 The browser never connected. Something is wrong. The tests cannot run. Aborting... after first test with multiple tests on CI #29190

Description

@akepley0280

Current behavior

After upgrading to 13.7.1 to fix the Firefox 124 issue, we confirmed that local runs of open and run work to run tests in Firefox with multiple specs synchronously.
But, overnight on the Github CI workflow action, we are continuing to see failures on any jobs that have multiple specs for Firefox only. Our Github action uses @cypress/github-actionsv5 with the following

    runs-on: ubuntu-latest
    ...
      - name: Run firefox
        if: ${{ always() }}
        uses: cypress-io/github-action@v5
        with:
          working-directory: e2e-tests
          browser: firefox
          headed: true
          spec: 'cypress/specs/parallel/${{ matrix.spec-folder }}/*.js'

Output without debug showing the first test succeeding but the second test failing/aborting:

DevTools listening on ws://127.0.0.1:44811/devtools/browser/2334dc2a-af89-432c-88d2-b245882d6beb

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

  (Run Starting)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Cypress:        13.7.1                                                                         │
  │ Browser:        Firefox 124                                                                    │
  │ Node Version:   v16.20.2 (/home/runner/runners/2.314.1/externals/node16/bin/node)              │
  │ Specs:          2 found (collections.js, knowledgebase-search.js)                              │
  │ Searched:       cypress/specs/parallel/knowledgebase/*.js                                      │
  │ Experiments:    experimentalMemoryManagement=true,experimentalStudio=true                      │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  collections.js                                                                  (1 of 2)

Your project has set the configuration option: `chromeWebSecurity` to `false`.

This option will not have an effect in Firefox. Tests that rely on web security being disabled will not run as expected.
Still waiting to connect to Firefox, retrying in 1 second (attempt 18/62)
Still waiting to connect to Firefox, retrying in 1 second (attempt 18/62)
Browserslist: caniuse-lite is outdated. Please run:
  npx update-browserslist-db@latest
  Why you should do it regularly: https://github.com/browserslist/update-db#readme


kbc-XOiAutomatedOrg-auto-new-collection
    ✓ Creates Collection (24342ms)
    ✓ Does Collection Stuff (18939ms)
    ✓ Deletes Collection ([85](https://github.com/xoeye/vision-web/actions/runs/8397901193/job/23001990647#step:9:86)63ms)


  3 passing (52s)

Warning: We failed capturing this video.

This error will not affect or change the exit code.

Error: Insufficient frames captured to create video.
    at ChildProcess.<anonymous> (<embedded>:2623:16306)
    at ChildProcess.emit (node:events:514:28)
    at Process.onexit (node:internal/child_process:291:12)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        3                                                                                │
  │ Passing:      3                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        false                                                                            │
  │ Duration:     52 seconds                                                                       │
  │ Spec Ran:     collections.js                                                                   │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  knowledgebase-search.js                                                         (2 of 2)

Your project has set the configuration option: `chromeWebSecurity` to `false`.

This option will not have an effect in Firefox. Tests that rely on web security being disabled will not run as expected.
Warning: vkCreateInstance: Found no drivers!
Warning: vkCreateInstance failed with VK_ERROR_INCOMPATIBLE_DRIVER
    at CheckVkSuccessImpl (../../third_party/dawn/src/dawn/native/vulkan/VulkanError.cpp:[88](https://github.com/xoeye/vision-web/actions/runs/8397901193/job/23001990647#step:9:89))
    at CreateVkInstance (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:458)
    at Initialize (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:344)
    at Create (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:266)
    at operator() (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:521)


Timed out waiting for the browser to connect. Retrying...

Timed out waiting for the browser to connect. Retrying again...

The browser never connected. Something is wrong. The tests cannot run. Aborting...

The browser never connected. Something is wrong. The tests cannot run. Aborting...

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        0                                                                                │
  │ Passing:      0                                                                                │
  │ Failing:      1                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        false                                                                            │
  │ Duration:     0 seconds                                                                        │
  │ Spec Ran:     knowledgebase-search.js                                                          │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


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

  (Run Finished)


       Spec                                              Tests  Passing  Failing  Pending  Skipped  
  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ ✔  collections.js                           00:52        3        3        -        -        - │
  ├────────────────────────────────────────────────────────────────────────────────────────────────┤
  │ ✖  knowledgebase-search.js                    0ms        -        -        1        -        - │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘
    ✖  1 of 2 failed (50%)                      00:52        3        3        1        -        -  

Error: Cypress tests: 1 failed

Chrome which runs on the same GH runner, same OS, using @cypress/github-actionsv5 has no issues

Desired behavior

Running Cypress in Github Workflow against Firefox 124 with @cypress/github-actionsv5 where multiple specs run synchronously works

Test code to reproduce

Should fail running against github action on FF124 using ubuntu image with multiple specs

Cypress Version

13.7.1

Node version

v16.20.2

Operating System

ubuntu-22.04

Debug Logs

cypress:server:socket-base socket-disconnecting transport close +99ms
  cypress:server:socket-base socket-disconnect transport close +0ms
  cypress:launcher:browsers firefox stdout: Stopped devtools server on 42925 +53ms
  cypress:launcher:browsers firefox stdout: 1711204983446	Marionette	INFO	Stopped listening on port 41353 +3ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35270 } +193ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35306 } +0ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35302 } +2ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35284 } +31ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35298 } +0ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35320 } +45ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 51772 } +63ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 51804 } +31ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35244 } +76ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 51834 } +3ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35262 } +1ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 51830 } +1ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35148 } +1ms
  cypress:server:util:socket_allowed allowed socket closed, removing { localPort: 35134 } +1ms
  cypress:server:browsers:cri-client disconnected, starting retries to reconnect... { closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +1m
  cypress:server:browsers:cri-client disconnected, attempting to reconnect... { retryIndex: 1, closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +0ms
  cypress:server:browsers:cri-client connecting { connected: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +1ms
  cypress:server:browsers:cri-client could not reconnect, retrying... { closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede', err: Error: socket hang up     at connResetException (node:internal/errors:720:14)     at Socket.socketOnEnd (node:_http_client:525:23)     at Socket.emit (node:events:526:35)     at endReadableNT (node:internal/streams/readable:1359:12)     at process.processTicksAndRejections (node:internal/process/task_queues:82:21) { code: 'ECONNRESET' } } +16ms
  cypress:server:browsers:firefox-util firefox: reconnecting CDP +509ms
  cypress:server:browsers:cri-client closing cri client { closed: false, target: '62f586a6-876e-4bd5-b8dc-38bb9b96257a' } +5ms
  cypress:server:browsers:cri-client closed cri client { closed: true, target: '62f586a6-876e-4bd5-b8dc-38bb9b96257a' } +0ms
  cypress:server:browsers:browser-cri-client Attaching to target url about:blank +1m
  cypress:server:browsers:cri-client enqueueing command { command: 'Target.getTargets', params: undefined } +0ms
  cypress:server:browsers:cri-client disconnected, attempting to reconnect... { retryIndex: 2, closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +97ms
  cypress:server:browsers:cri-client connecting { connected: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +0ms
  cypress:server:browsers:cri-client could not reconnect, retrying... { closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede', err: Error: connect ECONNREFUSED 127.0.0.1:44279     at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1495:16) { errno: -111, code: 'ECONNREFUSED', syscall: 'connect', address: '127.0.0.1', port: 44279 } } +3ms
  cypress:server:browsers:cri-client disconnected, attempting to reconnect... { retryIndex: 3, closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +101ms
  cypress:server:browsers:cri-client connecting { connected: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +0ms
  cypress:server:browsers:cri-client could not reconnect, retrying... { closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede', err: Error: connect ECONNREFUSED 127.0.0.1:44279     at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1495:16) { errno: -111, code: 'ECONNREFUSED', syscall: 'connect', address: '127.0.0.1', port: 44279 } } +3ms
  cypress:launcher:browsers firefox exited: { code: 0, signal: null } +669ms
  cypress:server:browsers browser instance exit event received { code: 0, signal: null } +729ms
  cypress:server:preprocessor removeFile /home/runner/work/vision-web/vision-web/e2e-tests/cypress/specs/parallel/knowledgebase/collections.js +1m
  cypress:server:preprocessor base emitter plugin close event +0ms
  cypress:server:preprocessor base emitter native close event +1ms
  cypress:server:preprocessor base emitter native close event +1ms
  cypress:server:browsers:firefox closing remote interface client +15s
  cypress:server:browsers:cri-client not closing, cri client is already closed { closed: true, target: '62f586a6-876e-4bd5-b8dc-38bb9b96257a' } +17ms
  cypress:server:browsers:cri-client closing cri client { closed: false, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +0ms
  cypress:server:browsers:cri-client closed cri client { closed: true, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +0ms
  cypress:webpack close /home/runner/work/vision-web/vision-web/e2e-tests/cypress/specs/parallel/knowledgebase/collections.js +1m
  cypress:server:browsers:cri-client disconnected, not reconnecting because client is closed { closed: true, target: 'ws://127.0.0.1:44279/devtools/browser/00d49155-e24f-4458-80a1-76e2b78c3ede' } +85ms
  cypress:server:browsers browsers.kill called with no active instance +59s
Timed out waiting for the browser to connect. Retrying...
cypress:server:browsers browsers.kill called with no active instance +1m
The browser never connected. Something is wrong. The tests cannot run. Aborting...
  cypress:server:run onError +1m
The browser never connected. Something is wrong. The tests cannot run. Aborting...
  cypress:server:run received project end +1ms
  cypress:server:run received videoController { videoController: undefined } +0ms
  cypress:server:run spec results: { error: 'The browser never connected. Something is wrong. The tests cannot run. Aborting...', reporter: undefined, reporterStats: null, screenshots: [], spec: { absolute: '/home/runner/work/vision-web/vision-web/e2e-tests/cypress/specs/parallel/knowledgebase/knowledgebase-search.js', fileExtension: '.js', fileName: 'knowledgebase-search', name: 'knowledgebase-search.js', relative: 'cypress/specs/parallel/knowledgebase/knowledgebase-search.js' }, stats: { duration: 0, endedAt: '2024-03-23T14:46:03.416Z', failures: 1, passes: 0, pending: 0, skipped: 0, startedAt: '2024-03-23T14:46:03.416Z', suites: 0, tests: 0 }, tests: [], video: null } +1ms
  cypress:server:run execute after:spec +0ms

Other

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions