Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kitchensink hangs starting a test on CircleCI Windows #5596

Closed
bahmutov opened this issue Nov 4, 2019 · 9 comments
Closed

Kitchensink hangs starting a test on CircleCI Windows #5596

bahmutov opened this issue Nov 4, 2019 · 9 comments
Assignees
Labels
browser: electron CI General issues involving running in a CI provider OS: windows

Comments

@bahmutov
Copy link
Contributor

bahmutov commented Nov 4, 2019

Cypress v3.6.0 on Windows 64bit on CircleCI with Electron 73 (default) browser

Example build https://circleci.com/gh/cypress-io/cypress-example-kitchensink/3778

Just hangs when starting the test

> cypress-example-kitchensink@0.0.0-development e2e:record C:\Users\circleci\app
> cypress run --record "--env" "circle=true"



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

  (Run Starting)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Cypress:    3.6.0                                                                              │
  │ Browser:    Electron 73 (headless)                                                             │
  │ Specs:      19 found (examples\actions.spec.js, examples\aliasing.spec.js, examples\assertions │
  │             .spec.js, examples\connectors.spec.js, examples\cookies.spec.js, examples\cypress_ │
  │             api.spec.js, examples\files.spec.js, examples\local_storage.spec.js, examples\loca │
  │             tion.spec.j...)                                                                    │
  │ Params:     Group: false, Parallel: false                                                      │
  │ Run URL:    https://dashboard.cypress.io/#/projects/******/runs/9280                           │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  examples\actions.spec.js                                                       (1 of 19)
  Estimated: 19 seconds


  Actions
Too long with no output (exceeded 1m0s)

Enabled debug logs, see https://circleci.com/gh/cypress-io/cypress-example-kitchensink/3783 for them. The error that caught my eye is at the beginning


Show containers:All (1)Successful (0)Failed (1)
0
(02:25)
+
TEST
Spin up Environment00:10
Checkout code00:02
Restoring Cache00:33
npm ci00:22
npm run cy:verify00:05
Saving Cache00:01
Start server01:10
Run Cypress tests01:10 (timed out)
#!bash.exe
DEBUG=cypress* npm run e2e -- --env circle=true

> cypress-example-kitchensink@0.0.0-development e2e C:\Users\circleci\app
> cypress run "--env" "circle=true"

2019-11-04T14:35:26.709Z cypress:cli cli starts with arguments ["C:\\Program Files\\nodejs\\node.exe","C:\\Users\\circleci\\app\\node_modules\\cypress\\bin\\cypress","run","--env","circle=true"]
2019-11-04T14:35:26.710Z cypress:cli NODE_OPTIONS is not set
2019-11-04T14:35:26.711Z cypress:cli program parsing arguments
2019-11-04T14:35:26.712Z cypress:cli running Cypress
2019-11-04T14:35:26.786Z cypress:cli parsed cli options { env: 'circle=true' }
2019-11-04T14:35:26.789Z cypress:cli verifying Cypress app
2019-11-04T14:35:26.790Z cypress:cli checking environment variables
2019-11-04T14:35:26.794Z cypress:cli checking if executable exists C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\Cypress.exe
2019-11-04T14:35:26.796Z cypress:cli Binary is executable? : true
2019-11-04T14:35:26.797Z cypress:cli binaryDir is  C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress
2019-11-04T14:35:26.797Z cypress:cli Reading binary package.json from: C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\package.json
2019-11-04T14:35:26.800Z cypress:cli Found binary version 3.6.0 installed in: C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress
2019-11-04T14:35:26.801Z cypress:cli { verified: true }
2019-11-04T14:35:26.801Z cypress:cli is Verified ? true
2019-11-04T14:35:26.801Z cypress:cli processing run options
2019-11-04T14:35:26.801Z cypress:cli --key is not set, looking up environment variable CYPRESS_RECORD_KEY
2019-11-04T14:35:26.802Z cypress:cli Using CYPRESS_RECORD_KEY from environment variable
2019-11-04T14:35:26.802Z cypress:cli run to spawn.start args ["--run-project","C:\\Users\\circleci\\app","--env","circle=true","--key","************************************"]
2019-11-04T14:35:26.802Z cypress:cli needs to start own Xvfb? false
2019-11-04T14:35:26.803Z cypress:cli spawning, should retry on display problem? false
2019-11-04T14:35:26.811Z cypress:cli spawning Cypress with executable: C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\Cypress.exe
2019-11-04T14:35:26.813Z cypress:cli spawn args [ '--run-project', 'C:\\Users\\circleci\\app', '--env', 'circle=true', '--key', '************************************', '--cwd', 'C:\\Users\\circleci\\app' ] { detached: false, stdio: 'pipe', windowsHide: false }
2019-11-04T14:35:26.994Z cypress:cli piping process STDIN into child STDIN
2019-11-04T14:35:26.995Z cypress:cli piping child STDOUT to process STDOUT
2019-11-04T14:35:26.995Z cypress:cli piping child STDERR to process STDERR

  cypress:ts Running without ts-node hook in environment "production" +0ms
  cypress:server:cypress starting cypress with argv [ 'C:\\Users\\circleci\\AppData\\Local\\Cypress\\Cache\\3.6.0\\Cypress\\Cypress.exe', '--run-project', 'C:\\Users\\circleci\\app', '--env', 'circle=true', '--key', '************************************', '--cwd', 'C:\\Users\\circleci\\app' ] +0ms
  cypress:server:args argv array: [ 'C:\\Users\\circleci\\AppData\\Local\\Cypress\\Cache\\3.6.0\\Cypress\\Cypress.exe', '--run-project', 'C:\\Users\\circleci\\app', '--env', 'circle=true', '--key', '************************************', '--cwd', 'C:\\Users\\circleci\\app' ] +0ms
  cypress:server:args argv parsed: { _: [ 'C:\\Users\\circleci\\AppData\\Local\\Cypress\\Cache\\3.6.0\\Cypress\\Cypress.exe' ], runProject: 'C:\\Users\\circleci\\app', env: 'circle=true', key: '************************************', cwd: 'C:\\Users\\circleci\\app', invokedFromCli: true } +5ms
  cypress:server:util:proxy found proxy environment variables { npm_config_proxy: '', npm_config_https_proxy: '' } +0ms
  cypress:server:util:proxy HTTP_PROXY is falsy, disabling HTTP_PROXY +1ms
  cypress:server:util:proxy setting default NO_PROXY of `` +0ms
  cypress:server:util:proxy <-loopback> not found, adding localhost to NO_PROXY +0ms
  cypress:server:util:proxy normalized proxy environment variables { NO_PROXY: '127.0.0.1,::1,localhost' } +1ms
  cypress:server:args options { _: [ 'C:\\Users\\circleci\\AppData\\Local\\Cypress\\Cache\\3.6.0\\Cypress\\Cypress.exe' ], runProject: 'C:\\Users\\circleci\\app', key: '************************************', cwd: 'C:\\Users\\circleci\\app', invokedFromCli: true, config: { env: { circle: true } } } +4ms
  cypress:server:args argv options: { _: [ 'C:\\Users\\circleci\\AppData\\Local\\Cypress\\Cache\\3.6.0\\Cypress\\Cypress.exe' ], runProject: 'C:\\Users\\circleci\\app', key: '************************************', cwd: 'C:\\Users\\circleci\\app', invokedFromCli: true, config: { env: { circle: true } }, projectRoot: 'C:\\Users\\circleci\\app', run: true } +1ms
  cypress:server:appdata path: C:\Users\circleci\AppData\Roaming\Cypress\cy\production +0ms
  cypress:server:cypress starting in mode run +397ms
  cypress:server:cypress running Electron currently +0ms
  cypress:server:appdata path: C:\Users\circleci\AppData\Roaming\Cypress\cy\production +676ms
  cypress:server:appdata path: C:\Users\circleci\AppData\Roaming\Cypress\cy\production\cache +6ms
  cypress:server:appdata path: C:\Users\circleci\AppData\Roaming\Cypress\cy\production\browsers +2s
  cypress:server:video using ffmpeg from C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\@ffmpeg-installer\win32-x64\ffmpeg.exe +0ms
  cypress:server:chrome_policy_check error initializing chrome policy check { err: Error: Module did not self-register. at process.func [as dlopen] (electron/js2c/asar.js:155:31) at Object.Module._extensions..node (internal/modules/cjs/loader.js:881:18) at Object.func [as .node] (electron/js2c/asar.js:155:31) at Module.load (internal/modules/cjs/loader.js:701:32) at tryModuleLoad (internal/modules/cjs/loader.js:633:12) at Function.Module._load (internal/modules/cjs/loader.js:625:3) at Module.require (internal/modules/cjs/loader.js:739:19) at require (internal/modules/cjs/helpers.js:14:16) at Object.<anonymous> (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\registry-js\dist\lib\registry.js:4:7) at Module._compile (internal/modules/cjs/loader.js:839:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:851:10) at Module.load (internal/modules/cjs/loader.js:701:32) at tryModuleLoad (internal/modules/cjs/loader.js:633:12) at Function.Module._load (internal/modules/cjs/loader.js:625:3) at Module.require (internal/modules/cjs/loader.js:739:19) at require (internal/modules/cjs/helpers.js:14:16) at Object.<anonymous> (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\registry-js\dist\lib\index.js:6:10) at Module._compile (internal/modules/cjs/loader.js:839:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:851:10) at Module.load (internal/modules/cjs/loader.js:701:32) at tryModuleLoad (internal/modules/cjs/loader.js:633:12) at Function.Module._load (internal/modules/cjs/loader.js:625:3) at Module.require (internal/modules/cjs/loader.js:739:19) at require (internal/modules/cjs/helpers.js:14:16) at Object.<anonymous> (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\util\chrome_policy_check.js:102:24) at Module._compile (internal/modules/cjs/loader.js:839:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:851:10) at Module.load (internal/modules/cjs/loader.js:701:32) at tryModuleLoad (internal/modules/cjs/loader.js:633:12) at Function.Module._load (internal/modules/cjs/loader.js:625:3) at Module.require (internal/modules/cjs/loader.js:739:19) at require (internal/modules/cjs/helpers.js:14:16) at Object.<anonymous> (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\modes\run.js:31:27) at Module._compile (internal/modules/cjs/loader.js:839:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:851:10) at Module.load (internal/modules/cjs/loader.js:701:32) at tryModuleLoad (internal/modules/cjs/loader.js:633:12) at Function.Module._load (internal/modules/cjs/loader.js:625:3) at Module.require (internal/modules/cjs/loader.js:739:19) at require (internal/modules/cjs/helpers.js:14:16) at module.exports (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\modes\index.js:7:16) at C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\cypress.js:53:38 at tryCatcher (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\util.js:16:23) at Function.Promise.attempt.Promise.try (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\method.js:39:29) at Object.runElectron (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\cypress.js:46:28) at Object.startInMode (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\cypress.js:159:23) at C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\lib\cypress.js:117:24 at tryCatcher (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\util.js:16:23) at Promise._settlePromiseFromHandler (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:547:31) at Promise._settlePromise (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:604:18) at Promise._settlePromise0 (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:649:10) at Promise._settlePromises (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:729:18) at Promise._fulfill (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:673:18) at Promise._settlePromise (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:617:21) at Promise._settlePromise0 (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:649:10) at Promise._settlePromises (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:729:18) at Promise._fulfill (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:673:18) at PromiseArray._resolve (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise_array.js:127:19) at PromiseArray._promiseFulfilled (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise_array.js:145:14) at Promise._settlePromise (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:609:26) at Promise._settlePromise0 (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:649:10) at Promise._settlePromises (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:729:18) at Promise._fulfill (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:673:18) at C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\nodeback.js:42:21 at C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\fs-extra\lib\mkdirs\mkdirs.js:56:16 at callback (C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\server\node_modules\graceful-fs\polyfills.js:295:20) at FSReqCallback.oncomplete (fs.js:164:5) } +0ms

At the end there is nothing interesting

  cypress:server:request successful response received { requestId: 'request1' } +1ms
  cypress:server:server resolve:url headers received, buffering response { headers: { 'content-length': '28291', 'content-disposition': 'inline; filename="actions.html"', 'accept-ranges': 'bytes', etag: '"039d0311df5f1649899cb1e88dd12288662ea240"', 'content-type': 'text/html; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', date: 'Mon, 04 Nov 2019 14:35:35 GMT', connection: 'keep-alive' }, statusCode: 200 } +42ms
  cypress:server:cors Parsed URL { port: '8080', tld: 'localhost', domain: '' } +0ms
  cypress:server:cookies getting:cookies { domain: 'localhost' } +65ms
  cypress:server:cookies received get:cookies [] +1ms
  cypress:server:server setting details resolving url { isOkStatusCode: true, contentType: 'text/html', url: 'http://localhost:8080/commands/actions', status: 200, cookies: [], statusText: 'OK', redirects: [], originalUrl: 'http://localhost:8080/commands/actions' } +27ms
  cypress:server:server resolve:url response ended, setting buffer { newUrl: 'http://localhost:8080/commands/actions', details: { isOkStatusCode: true, contentType: 'text/html', url: 'http://localhost:8080/commands/actions', status: 200, cookies: [], statusText: 'OK', redirects: [], originalUrl: 'http://localhost:8080/commands/actions', isHtml: true } } +1ms
  cypress:server:server Setting remoteAuth null +2ms
  cypress:server:cors Parsed URL { port: '8080', tld: 'localhost', domain: '' } +8ms
  cypress:server:server Setting remoteOrigin http://localhost:8080 +0ms
  cypress:server:server Setting remoteHostAndPort { port: '8080', tld: 'localhost', domain: '' } +0ms
  cypress:server:server Setting remoteDocDomain localhost +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +0ms
  cypress:server:socket backend:request { eventName: 'preserve:run:state', args: [ { currentId: 'r3', tests: {}, startTime: '2019-11-04T14:35:35.031Z', emissions: [Object], passed: 0, failed: 0, pending: 0, numLogs: 0, autoScrollingEnabled: true, scrollTop: 0 } ] } +85ms
  cypress:server:routes Serving Cypress front-end by requested URL: /__/ +3s
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +347ms
  cypress:server:runner serving runner index.html with config { version: '3.6.0', platform: 'win32', arch: 'x64', projectName: 'app' } +3s
  cypress:server:runner env object has the following keys: RECORD_KEY, TEST_URL, circle +1ms
Too long with no output (exceeded 1m0s)

Note, the message cypress:server:runner env object has the following keys is usually followed by this:

  cypress:server:runner env object has the following keys: RECORD_KEY, TEST_URL, circle +0ms
  cypress:server:browsers:electron debugger: enable Console and Network +1s
  cypress:server:browsers browser opened +1s
  cypress:server:server Got CONNECT request from localhost:49998
@bahmutov
Copy link
Contributor Author

bahmutov commented Nov 4, 2019

This is blocking #5169

@bahmutov
Copy link
Contributor Author

bahmutov commented Nov 4, 2019

Tried to rerun this job with SSH and connect:

$ ssh -p 54782 35.231.230.8 -- bash.exe
The authenticity of host '[35.231.230.8]:54782 ([35.231.230.8]:54782)' can't be established.
RSA key fingerprint is SHA256:KrASngIf8kUTVFyNdhGHRZZ46LOfsWGTgrQFEWpZ1oU.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[35.231.230.8]:54782' (RSA) to the list of known hosts.

^CKilled by signal 2.

did not connect

Running with cmd.exe instead

$ ssh -p 54782 35.231.230.8 -- cmd.exe
cd app
npx serve --listen 8080

From another connection started Cypress tests, getting the same error

  cypress:server:socket backend:request { eventName: 'preserve:run:state', args: [ { currentId: 'r3', tests: {}, startTime: '2019-11-04T14:55:53.685Z', emissions: [Object], passed: 0, failed: 0, pending: 0, numLogs: 0, autoScrollingEnabled: true, scrollTop: 0 } ] } +95ms
  cypress:server:routes Serving Cypress front-end by requested URL: /__/ +4s
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +348ms
  cypress:server:runner serving runner index.html with config { version: '3.6.0', platform: 'win32', arch: 'x64', projectName: 'app' } +4s
  cypress:server:runner env object has the following keys: RECORD_KEY, TEST_URL +0ms

then just hangs ...

@bahmutov
Copy link
Contributor Author

bahmutov commented Nov 4, 2019

Running via SSH in headed mode WORKS

set DEBUG=*
npx cypress run --headed

 cypress:server:chrome_policy_check error initializing chrome policy check { err: Error: Module did not self-register. at process.func [as dlopen]
...
cypress:server:routes Serving Cypress front-end by requested URL: /__/ +0ms
  cypress:server:server Getting remote state: { auth: undefined, props: null, origin: 'http://localhost:50161', strategy: 'file', visiting: undefined, domainName: 'localhost', fileServer: 'http://localhost:50162' } +448ms
  cypress:server:runner serving runner index.html with config { version: '3.6.0', platform: 'win32', arch: 'x64', projectName: 'app' } +0ms
  cypress:server:runner env object has the following keys: RECORD_KEY, TEST_URL +0ms
  express:view lookup "C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\runner\dist\index.html" +3ms
  express:view stat "C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\runner\dist\index.html" +0ms
  express:view render "C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\runner\dist\index.html" +1ms
  compression gzip compression +0ms
  express:router dispatching GET /__cypress/runner/cypress_runner.css +113ms
  express:router query  : /__cypress/runner/cypress_runner.css +0ms
  express:router expressInit  : /__cypress/runner/cypress_runner.css +1ms
  express:router <anonymous>  : /__cypress/runner/cypress_runner.css +0ms
  express:router cookieParser  : /__cypress/runner/cypress_runner.css +0ms
  express:router compression  : /__cypress/runner/cypress_runner.css +0ms
  express:router errorHandler  : /__cypress/runner/cypress_runner.css +0ms
  send stat "C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\runner\dist\cypress_runner.css" +0ms
  send pipe "C:\Users\circleci\AppData\Local\Cypress\Cache\3.6.0\Cypress\resources\app\packages\runner\dist\cypress_runner.css" +2ms
  send accept ranges +0ms
...
compression gzip compression +53ms
  cypress:server:browsers:electron debugger: enable Console and Network +1s
  cypress:server:browsers browser opened +1s
  cypress:server:server Got CONNECT request from localhost:50161 +1s
  cypress:https-proxy Writing browserSocket connection headers { url: 'localhost:50161', headLength: 0, headers: { host: 'localhost:50161', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36' } } +2s
  cypress:https-proxy Got first head bytes { url: 'localhost:50161', head: 'GET /__socket.io/?EIO=3&transport=websocket HTTP/1.1\r\nHost: loca' } +4ms
  cypress:server:server HTTPS request does not match URL: https://localhost:50161 with props: null +6ms
  cypress:https-proxy Making connection to localhost:50161 +1ms

Hmm, but then it hangs again with the following

  cypress:server:project onMocha test +2ms
  cypress:server:reporter got mocha event 'test' with args: [ { id: 'r16', title: 'cy.scrollTo() - scroll the window or element to a position', body: "function () {\n    // https://on.cypress.io/scrollTo\n    // You can scroll to 9 specific positions of an element:\n    //  -----------------------------------\n    // | topLeft        top       topRight |\n    // |                                   |\n    // |                                   |\n    // |                                   |\n    // | left          center        right |\n    // |                                   |\n    // |                                   |\n    // |                                   |\n    // | bottomLeft   bottom   bottomRight |\n    //  -----------------------------------\n    // if you chain .scrollTo() off of cy, we will\n    // scroll the entire window\n    cy.scrollTo('bottom');\n    cy.get('#scrollable-horizontal').scrollTo('right'); // or you can scroll to a specific coordinate:\n    // (x axis, y axis) in pixels\n\n    cy.get('#scrollable-vertical').scrollTo(250, 250); // or you can scroll to a specific percentage\n    // of the (width, height) of the element\n\n    cy.get('#scrollable-both').scrollTo('75%', '25%'); // control the easing of the scroll (default is 'swing')\n\n    cy.get('#scrollable-vertical').scrollTo('center', {\n      easing: 'linear'\n    }); // control the duration of the scroll (in ms)\n\n    cy.get('#scrollable-both').scrollTo('center', {\n      duration: 2000\n    });\n  }", type: 'test' } ] +2ms
  engine:ws received "42["mocha","hook",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":156}]" +2ms
  engine:socket packet +2ms
  socket.io-parser decoded 2["mocha","hook",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":156}] as {"type":2,"nsp":"/","data":["mocha","hook",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":156}]} +1ms
  socket.io:socket got packet {"type":2,"nsp":"/","data":["mocha","hook",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":156}]} +2ms
  socket.io:socket emitting event ["mocha","hook",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":156}] +0ms
  socket.io:socket dispatching an event ["mocha","hook",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":156}] +0ms
  cypress:server:project onMocha hook +2ms
  cypress:server:reporter got mocha event 'hook' with args: [ { id: 'r16', title: '"before each" hook', hookName: 'before each', hookId: 'h1', body: "function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }", type: 'hook', duration: 156 } ] +2ms
  engine:ws received "4241["automation:request","get:cookies",{"domain":"localhost"}]" +2ms
  engine:socket packet +2ms
  socket.io-parser decoded 241["automation:request","get:cookies",{"domain":"localhost"}] as {"type":2,"nsp":"/","id":41,"data":["automation:request","get:cookies",{"domain":"localhost"}]} +2ms
  socket.io:socket got packet {"type":2,"nsp":"/","id":41,"data":["automation:request","get:cookies",{"domain":"localhost"}]} +1ms
  socket.io:socket emitting event ["automation:request","get:cookies",{"domain":"localhost"}] +0ms
  socket.io:socket attaching ack callback to event +0ms
  socket.io:socket dispatching an event ["automation:request","get:cookies",{"domain":"localhost"},null] +0ms
  cypress:server:socket automation:request get:cookies { domain: 'localhost' } +204ms
  cypress:server:cookies getting:cookies { domain: 'localhost' } +195ms
  cypress:server:cookies received get:cookies [] +0ms
  socket.io:socket sending ack [{"response":[]}] +1ms
  socket.io:client writing packet {"id":41,"type":3,"data":[{"response":[]}],"nsp":"/"} +194ms
  socket.io-parser encoding packet {"id":41,"type":3,"data":[{"response":[]}],"nsp":"/"} +2ms
  socket.io-parser encoded {"id":41,"type":3,"data":[{"response":[]}],"nsp":"/"} as 341[{"response":[]}] +0ms
  engine:socket sending packet "message" (341[{"response":[]}]) +2ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "4341[{"response":[]}]" +2ms
  engine:ws received "4242["backend:request","reset:xhr:server"]" +0ms
  engine:socket packet +0ms
  socket.io-parser decoded 242["backend:request","reset:xhr:server"] as {"type":2,"nsp":"/","id":42,"data":["backend:request","reset:xhr:server"]} +0ms
  socket.io:socket got packet {"type":2,"nsp":"/","id":42,"data":["backend:request","reset:xhr:server"]} +2ms
  socket.io:socket emitting event ["backend:request","reset:xhr:server"] +0ms
  socket.io:socket attaching ack callback to event +0ms
  socket.io:socket dispatching an event ["backend:request","reset:xhr:server",null] +0ms
  cypress:server:socket backend:request { eventName: 'reset:xhr:server', args: [] } +3ms
  cypress:server:xhr_ws_server resetting incomingXhrs { incomingXhrResponses: {} } +225ms
  socket.io:socket sending ack [{}] +0ms
  socket.io:client writing packet {"id":42,"type":3,"data":[{}],"nsp":"/"} +1ms
  socket.io-parser encoding packet {"id":42,"type":3,"data":[{}],"nsp":"/"} +1ms
  socket.io-parser encoded {"id":42,"type":3,"data":[{}],"nsp":"/"} as 342[{}] +0ms
  engine:socket sending packet "message" (342[{}]) +1ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "4342[{}]" +1ms
  engine:ws received "4243["backend:request","resolve:url","http://localhost:8080/commands/actions",{"auth":null,"failOnStatusCode":true,"retryOnNetworkFailure":true,"retryOnStatusCodeFailure":false,"method":"GET","body":null,"headers":{},"timeout":30000}]" +16ms
  engine:socket packet +16ms
  socket.io-parser decoded 243["backend:request","resolve:url","http://localhost:8080/commands/actions",{"auth":null,"failOnStatusCode":true,"retryOnNetworkFailure":true,"retryOnStatusCodeFailure":false,"method":"GET","body":null,"headers":{},"timeout":30000}] as {"type":2,"nsp":"/","id":43,"data":["backend:request","resolve:url","http://localhost:8080/commands/actions",{"auth":null,"failOnStatusCode":true,"retryOnNetworkFailure":true,"retryOnStatusCodeFailure":false,"method":"GET","body":null,"headers":{},"timeout":30000}]} +17ms
  socket.io:socket got packet {"type":2,"nsp":"/","id":43,"data":["backend:request","resolve:url","http://localhost:8080/commands/actions",{"auth":null,"failOnStatusCode":true,"retryOnNetworkFailure":true,"retryOnStatusCodeFailure":false,"method":"GET","body":null,"headers":{},"timeout":30000}]} +17ms
  socket.io:socket emitting event ["backend:request","resolve:url","http://localhost:8080/commands/actions",{"auth":null,"failOnStatusCode":true,"retryOnNetworkFailure":true,"retryOnStatusCodeFailure":false,"method":"GET","body":null,"headers":{},"timeout":30000}] +0ms
  socket.io:socket attaching ack callback to event +0ms
  socket.io:socket dispatching an event ["backend:request","resolve:url","http://localhost:8080/commands/actions",{"auth":null,"failOnStatusCode":true,"retryOnNetworkFailure":true,"retryOnStatusCodeFailure":false,"method":"GET","body":null,"headers":{},"timeout":30000},null] +0ms
  cypress:server:socket backend:request { eventName: 'resolve:url', args: [ 'http://localhost:8080/commands/actions', { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: {}, timeout: 30000 } ] } +17ms
  cypress:server:server resolving visit { url: 'http://localhost:8080/commands/actions', headers: { host: 'localhost:8080', connection: 'Upgrade', pragma: 'no-cache', 'cache-control': 'no-cache', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', upgrade: 'websocket', origin: 'http://localhost:8080', 'sec-websocket-version': '13', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US', 'sec-websocket-key': '5DGaWx6acL7eRCburWXuCg==', 'sec-websocket-extensions': 'permessage-deflate; client_max_window_bits' }, options: { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: {}, timeout: 30000 } } +157ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +1ms
  cypress:server:server sending request with options { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: { accept: 'text/html,*/*' }, timeout: 30000, gzip: false, url: 'http://localhost:8080/commands/actions', onBeforeReqInit: [Function: runPhase], followRedirect: [Function: followRedirect] } +0ms
  cypress:server:cookies getting:cookies { url: 'http://localhost:8080/commands/actions' } +20ms
  cypress:server:cookies received get:cookies [] +1ms
  cypress:server:request got cookies from browser { reqUrl: 'http://localhost:8080/commands/actions', cookies: [] } +152ms
  cypress:server:request sending request as stream { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: { accept: 'text/html,*/*', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', Cookie: undefined }, timeout: 30000, gzip: false, url: 'http://localhost:8080/commands/actions', onBeforeReqInit: [Function: runPhase] } +0ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/commands/actions' } +158ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/commands/actions' } +1ms
  cypress:server:request received status code on request { requestId: 'request109', statusCode: 200 } +5ms
  cypress:server:request successful response received { requestId: 'request109' } +0ms
  cypress:server:server resolve:url headers received, buffering response { headers: { 'content-length': '28291', 'content-disposition': 'inline; filename="actions.html"', 'accept-ranges': 'bytes', etag: '"039d0311df5f1649899cb1e88dd12288662ea240"', 'content-type': 'text/html; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 200 } +6ms
  cypress:server:cors Parsed URL { port: '8080', tld: 'localhost', domain: '' } +221ms
  cypress:server:cookies getting:cookies { domain: 'localhost' } +7ms
  cypress:server:cookies received get:cookies [] +0ms
  cypress:server:server setting details resolving url { isOkStatusCode: true, contentType: 'text/html', url: 'http://localhost:8080/commands/actions', status: 200, cookies: [], statusText: 'OK', redirects: [], originalUrl: 'http://localhost:8080/commands/actions' } +3ms
  cypress:server:server resolve:url response ended, setting buffer { newUrl: 'http://localhost:8080/commands/actions', details: { isOkStatusCode: true, contentType: 'text/html', url: 'http://localhost:8080/commands/actions', status: 200, cookies: [], statusText: 'OK', redirects: [], originalUrl: 'http://localhost:8080/commands/actions', isHtml: true } } +0ms
  cypress:server:server Setting remoteAuth null +0ms
  cypress:server:cors Parsed URL { port: '8080', tld: 'localhost', domain: '' } +2ms
  cypress:server:server Setting remoteOrigin http://localhost:8080 +1ms
  cypress:server:server Setting remoteHostAndPort { port: '8080', tld: 'localhost', domain: '' } +0ms
  cypress:server:server Setting remoteDocDomain localhost +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +0ms
  socket.io:socket sending ack [{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}] +11ms
  socket.io:client writing packet {"id":43,"type":3,"data":[{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}],"nsp":"/"} +29ms
  socket.io-parser encoding packet {"id":43,"type":3,"data":[{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}],"nsp":"/"} +12ms
  socket.io-parser encoded {"id":43,"type":3,"data":[{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}],"nsp":"/"} as 343[{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}] +0ms
  engine:socket sending packet "message" (343[{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}]) +13ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "4343[{"response":{"isOkStatusCode":true,"contentType":"text/html","url":"http://localhost:8080/commands/actions","status":200,"cookies":[],"statusText":"OK","redirects":[],"originalUrl":"http://localhost:8080/commands/actions","isHtml":true,"totalTime":9}}]" +13ms
  express:router dispatching GET /commands/actions +176ms
  express:router query  : /commands/actions +0ms
  express:router expressInit  : /commands/actions +0ms
  express:router <anonymous>  : /commands/actions +0ms
  express:router cookieParser  : /commands/actions +0ms
  express:router compression  : /commands/actions +0ms
  express:router errorHandler  : /commands/actions +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +9ms
  cypress:server:proxy handling proxied request { url: '/commands/actions', proxiedUrl: 'http://localhost:8080/commands/actions', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'upgrade-insecure-requests': '1', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8', referer: 'http://localhost:8080/__/', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US', cookie: '__cypress.initial=true' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +170ms
  cypress:server:buffers found request buffer { buffer: { url: 'http://localhost:8080/commands/actions', originalUrl: 'http://localhost:8080/commands/actions' }, bufferCount: 0 } +220ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/commands/actions', headers: { 'content-length': '28291', 'content-disposition': 'inline; filename="actions.html"', 'accept-ranges': 'bytes', etag: '"039d0311df5f1649899cb1e88dd12288662ea240"', 'content-type': 'text/html; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 200, isGzipped: undefined, wantsInjection: 'full', wantsSecurityRemoved: true } +1ms
  cypress:server:proxy inferred charset from response { httpCharset: 'utf8' } +0ms
  compression gzip compression +172ms
  express:router dispatching GET /assets/css/vendor/bootstrap.min.css +16ms
  express:router query  : /assets/css/vendor/bootstrap.min.css +0ms
  express:router expressInit  : /assets/css/vendor/bootstrap.min.css +0ms
  express:router <anonymous>  : /assets/css/vendor/bootstrap.min.css +0ms
  express:router cookieParser  : /assets/css/vendor/bootstrap.min.css +0ms
  express:router compression  : /assets/css/vendor/bootstrap.min.css +0ms
  express:router errorHandler  : /assets/css/vendor/bootstrap.min.css +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +16ms
  cypress:server:proxy handling proxied request { url: '/assets/css/vendor/bootstrap.min.css', proxiedUrl: 'http://localhost:8080/assets/css/vendor/bootstrap.min.css', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"7063fe53563e81579f05b108d594431ff31a426d"', accept: 'text/css,*/*;q=0.1', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +15ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/css/vendor/bootstrap.min.css' } +33ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/css/vendor/bootstrap.min.css' } +1ms
  cypress:server:stream_buffer stream buffer writeable final called +193ms
  express:router dispatching GET /assets/css/vendor/fira.css +3ms
  express:router query  : /assets/css/vendor/fira.css +1ms
  express:router expressInit  : /assets/css/vendor/fira.css +0ms
  express:router <anonymous>  : /assets/css/vendor/fira.css +0ms
  express:router cookieParser  : /assets/css/vendor/fira.css +0ms
  express:router compression  : /assets/css/vendor/fira.css +0ms
  express:router errorHandler  : /assets/css/vendor/fira.css +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +3ms
  cypress:server:proxy handling proxied request { url: '/assets/css/vendor/fira.css', proxiedUrl: 'http://localhost:8080/assets/css/vendor/fira.css', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"bf0df3ac01f602a5c4874b7fcb432fd6f2257325"', accept: 'text/css,*/*;q=0.1', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +3ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/css/vendor/fira.css' } +3ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/css/vendor/fira.css' } +0ms
  cypress:server:stream_buffer stream buffer writeable final called +3ms
  express:router dispatching GET /assets/css/styles.css +2ms
  express:router query  : /assets/css/styles.css +1ms
  express:router expressInit  : /assets/css/styles.css +0ms
  express:router <anonymous>  : /assets/css/styles.css +0ms
  express:router cookieParser  : /assets/css/styles.css +0ms
  express:router compression  : /assets/css/styles.css +0ms
  express:router errorHandler  : /assets/css/styles.css +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +3ms
  cypress:server:proxy handling proxied request { url: '/assets/css/styles.css', proxiedUrl: 'http://localhost:8080/assets/css/styles.css', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"c2f559ea261d321a9f9bac2a3eaca6d6422881aa"', accept: 'text/css,*/*;q=0.1', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +3ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/css/styles.css' } +2ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/css/styles.css' } +0ms
  cypress:server:stream_buffer stream buffer writeable final called +3ms
  express:router dispatching GET /assets/js/vendor/jquery-1.12.0.min.js +2ms
  express:router query  : /assets/js/vendor/jquery-1.12.0.min.js +0ms
  express:router expressInit  : /assets/js/vendor/jquery-1.12.0.min.js +0ms
  express:router <anonymous>  : /assets/js/vendor/jquery-1.12.0.min.js +0ms
  express:router cookieParser  : /assets/js/vendor/jquery-1.12.0.min.js +0ms
  express:router compression  : /assets/js/vendor/jquery-1.12.0.min.js +0ms
  express:router errorHandler  : /assets/js/vendor/jquery-1.12.0.min.js +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +2ms
  cypress:server:proxy handling proxied request { url: '/assets/js/vendor/jquery-1.12.0.min.js', proxiedUrl: 'http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"4781683780c5d8643b799f4176c0247bd83ea920"', accept: '*/*', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +3ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js' } +3ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js' } +0ms
  cypress:server:stream_buffer stream buffer writeable final called +2ms
  express:router dispatching GET /assets/js/vendor/bootstrap.min.js +3ms
  express:router query  : /assets/js/vendor/bootstrap.min.js +0ms
  express:router expressInit  : /assets/js/vendor/bootstrap.min.js +0ms
  express:router <anonymous>  : /assets/js/vendor/bootstrap.min.js +0ms
  express:router cookieParser  : /assets/js/vendor/bootstrap.min.js +0ms
  express:router compression  : /assets/js/vendor/bootstrap.min.js +0ms
  express:router errorHandler  : /assets/js/vendor/bootstrap.min.js +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +3ms
  cypress:server:proxy handling proxied request { url: '/assets/js/vendor/bootstrap.min.js', proxiedUrl: 'http://localhost:8080/assets/js/vendor/bootstrap.min.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"c768e3633137e01f974210b6d559c2fb63dba298"', accept: '*/*', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +2ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/js/vendor/bootstrap.min.js' } +2ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/js/vendor/bootstrap.min.js' } +1ms
  cypress:server:stream_buffer stream buffer writeable final called +3ms
  express:router dispatching GET /assets/js/vendor/highlight.pack.js +2ms
  express:router query  : /assets/js/vendor/highlight.pack.js +0ms
  express:router expressInit  : /assets/js/vendor/highlight.pack.js +0ms
  express:router <anonymous>  : /assets/js/vendor/highlight.pack.js +0ms
  express:router cookieParser  : /assets/js/vendor/highlight.pack.js +0ms
  express:router compression  : /assets/js/vendor/highlight.pack.js +1ms
  express:router errorHandler  : /assets/js/vendor/highlight.pack.js +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +3ms
  cypress:server:proxy handling proxied request { url: '/assets/js/vendor/highlight.pack.js', proxiedUrl: 'http://localhost:8080/assets/js/vendor/highlight.pack.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"96014c69f992e481a32f1b54112b60fc41fae19a"', accept: '*/*', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +3ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/js/vendor/highlight.pack.js' } +2ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/js/vendor/highlight.pack.js' } +0ms
  cypress:server:stream_buffer stream buffer writeable final called +2ms
  cypress:server:request received status code on request { requestId: 'request110', statusCode: 304 } +46ms
  cypress:server:request successful response received { requestId: 'request110' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/css/vendor/bootstrap.min.css', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +3ms
  compression undefined not compressible +32ms
  compression no compression: filtered +0ms
  cypress:server:request received status code on request { requestId: 'request111', statusCode: 304 } +1ms
  cypress:server:request successful response received { requestId: 'request111' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/css/vendor/fira.css', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +2ms
  compression undefined not compressible +1ms
  compression no compression: filtered +0ms
  cypress:server:request received status code on request { requestId: 'request112', statusCode: 304 } +1ms
  cypress:server:request successful response received { requestId: 'request112' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/css/styles.css', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +1ms
  compression undefined not compressible +1ms
  compression no compression: filtered +0ms
  cypress:server:request received status code on request { requestId: 'request113', statusCode: 304 } +1ms
  cypress:server:request successful response received { requestId: 'request113' } +1ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +1ms
  compression undefined not compressible +1ms
  compression no compression: filtered +0ms
  cypress:server:request received status code on request { requestId: 'request114', statusCode: 304 } +1ms
  cypress:server:request successful response received { requestId: 'request114' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/vendor/bootstrap.min.js', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +1ms
  compression undefined not compressible +1ms
  compression no compression: filtered +0ms
  cypress:server:request received status code on request { requestId: 'request115', statusCode: 304 } +1ms
  cypress:server:request successful response received { requestId: 'request115' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/vendor/highlight.pack.js', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +1ms
  compression undefined not compressible +2ms
  compression no compression: filtered +0ms
  express:router dispatching GET /assets/js/scripts.js +10ms
  express:router query  : /assets/js/scripts.js +0ms
  express:router expressInit  : /assets/js/scripts.js +0ms
  express:router <anonymous>  : /assets/js/scripts.js +0ms
  express:router cookieParser  : /assets/js/scripts.js +0ms
  express:router compression  : /assets/js/scripts.js +1ms
  express:router errorHandler  : /assets/js/scripts.js +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +11ms
  cypress:server:proxy handling proxied request { url: '/assets/js/scripts.js', proxiedUrl: 'http://localhost:8080/assets/js/scripts.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.6.0 Chrome/73.0.3683.121 Electron/5.0.10 Safari/537.36', 'if-none-match': '"2dcbe00c9df1e3c2bc589c45574229a444725ca4"', accept: '*/*', referer: 'http://localhost:8080/commands/actions', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +2ms
  cypress:network:agent addRequest called { isHttps: false, href: 'http://localhost:8080/assets/js/scripts.js' } +11ms
  cypress:network:agent got family { family: 4, href: 'http://localhost:8080/assets/js/scripts.js' } +0ms
  cypress:server:stream_buffer stream buffer writeable final called +12ms
  cypress:server:request received status code on request { requestId: 'request116', statusCode: 304 } +6ms
  cypress:server:request successful response received { requestId: 'request116' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/scripts.js', headers: { date: 'Mon, 04 Nov 2019 14:59:25 GMT', connection: 'keep-alive' }, statusCode: 304, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +5ms
  compression undefined not compressible +6ms
  compression no compression: filtered +0ms
  engine:ws received "42["mocha","hook end",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":162}]" +122ms
  engine:socket packet +122ms
  socket.io-parser decoded 2["mocha","hook end",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":162}] as {"type":2,"nsp":"/","data":["mocha","hook end",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":162}]} +123ms
  socket.io:socket got packet {"type":2,"nsp":"/","data":["mocha","hook end",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":162}]} +124ms
  socket.io:socket emitting event ["mocha","hook end",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":162}] +0ms
  socket.io:socket dispatching an event ["mocha","hook end",{"id":"r16","title":"\"before each\" hook","hookName":"before each","hookId":"h1","body":"function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }","type":"hook","duration":162}] +0ms
  cypress:server:project onMocha hook end +156ms
  cypress:server:reporter got mocha event 'hook end' with args: [ { id: 'r16', title: '"before each" hook', hookName: 'before each', hookId: 'h1', body: "function () {\n    cy.visit('http://localhost:8080/commands/actions');\n  }", type: 'hook', duration: 162 } ] +156ms
  engine:ws received "2" +11s
  engine:socket packet +11s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +1ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +1ms
  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms
  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms
  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms
^[[B  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms


  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms

and it just repeats

engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms
  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms
  engine:ws received "2" +25s
  engine:socket packet +25s
  engine:socket got ping +0ms
  engine:socket sending packet "pong" (undefined) +0ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "3" +0ms

@bahmutov
Copy link
Contributor Author

bahmutov commented Nov 4, 2019

Additional information: I have experimented with Circle Windows in cypress-io/cypress-test-tiny#49 and have noticed that the build only hangs if there is cy.visit(). Here are the builds with DEBUG=*

Another observation for another day - it seems the successful process is hanging AFTER finishing tests with the last lines

  socket.io-parser encoding packet {"type":2,"data":["tests:finished"],"nsp":"/"} +2ms
  socket.io-parser encoded {"type":2,"data":["tests:finished"],"nsp":"/"} as 2["tests:finished"] +0ms
  socket.io:client writing packet ["2[\"tests:finished\"]"] +434ms
  engine:socket sending packet "message" (2["tests:finished"]) +3ms
  engine:socket flushing buffer to transport +0ms
  engine:ws writing "42["tests:finished"]" +3ms

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        1                                                                                │
  │ Passing:      1                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     0 seconds                                                                        │
  │ Spec Ran:     spec.js                                                                          │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘

  cypress:server:run attempting to close the browser +3s
  cypress:server:browsers killing browser process +3s

which might be resolved by #5603

@jennifer-shehane
Copy link
Member

We have bumped Kitchensink down to Cypress version 3.4.1 and this passes, so the hanging is isolated to Cypress 3.5.0. I believe this is the same issue detailed in #5475

@gabbersepp
Copy link
Contributor

hey we have the same issue since we updated from 3.4.1 to 3.6.1 in our jenkins CI.
I will downgrade to 3.4.1 until a solution is found.

I think it is the same error:

image

Is there any workaround?
Can I assist somehow?

We are using Windows Server.

@gabbersepp
Copy link
Contributor

gabbersepp commented Dec 2, 2019

On jenkins it is executed as SYSTEM user. It seems to work when I start the tests with my local account on this server. Does this make a difference?

//Edit:
I replaced everything in C:\Windows\System32\config\systemprofile\AppData\Local\Cypress\Cache\3.7.0\Cypress with C:\Users\jbiehler\AppData\Local\Cypress\Cache\3.7.0\Cypress. This should remove everything user specific that may happen during install of cypress I think. But it did not help.

Are there any other files that are generated based on the current user?

//Edit2:
OK I tried to remove the line const chromePolicyCheck = require('../util/chrome_policy_check') in packages/server/lib/run.js and the job now seems to run properly but stops without any message.

@gabbersepp
Copy link
Contributor

fyi: I was able to resolve the problem by updating to cypress 3.8.0.

@flotwig
Copy link
Contributor

flotwig commented Dec 16, 2019

Yes, this was fixed by upgrading Electron in 3.8.0: #5852

@flotwig flotwig closed this as completed Dec 16, 2019
@cypress-io cypress-io locked as resolved and limited conversation to collaborators Dec 17, 2019
@jennifer-shehane jennifer-shehane removed the stage: needs investigating Someone from Cypress needs to look at this label Jan 28, 2020
@bahmutov bahmutov reopened this Jul 13, 2020
@jennifer-shehane jennifer-shehane added CI General issues involving running in a CI provider and removed CI: circle labels Oct 5, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
browser: electron CI General issues involving running in a CI provider OS: windows
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants