Cypress: Console info/warnings in STDOUT about config.browsers and react

Created on 20 May 2019  ยท  15Comments  ยท  Source: cypress-io/cypress

Current behavior:

Execute the tests in a Docker container and we get the following info for each test.

Running: user_class/add_user_class_spec.js...                       (5 of 11) 
[185:0520/044143.433372:INFO:CONSOLE(162422)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools", source: http://uitesting.qa.etisoftware.local/__cypress/runner/cypress_runner.js (162422)
[185:0520/044144.300086:INFO:CONSOLE(118886)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools", source: http://uitesting.qa.etisoftware.local/__cypress/runner/cypress_runner.js (118886)
[185:0520/044144.548030:INFO:CONSOLE(96850)] "Warning: Failed prop type: The prop `config.browsers` is marked as required in `App`, but its value is `undefined`.
    in App (created by Container)
    in Container", source: http://uitesting.qa.etisoftware.local/__cypress/runner/cypress_runner.js (96850)

Desired behavior:

I'd like to know what I need to do to remedy this.

I can see that it recommending I "download React DevTools for a better development experience", but this is not relevant when I am running in Docker in my nightly jobs.
Where do I set the value for config.browsers? I dont anything about this in the changelog for 3.0.3. I dont see it anywhere in the documentation for config.

Other info

I run my tests nightly with the following command:

docker run --name launchPadUiTest -v /home/jenkins/workspace/UiTestingPipelines/LaunchPadUiTestingPipeline:/ui_testing eti-cypress:latest /bin/bash -c '/node_modules/.bin/cypress run --project /ui_testing'

When we updated to 3.0.3 I rebuilt our image.

FROM cypress/browsers:chrome69
RUN npm i cypress
RUN npm install wait-on
docker build -t eti-cypress .

This is the header from the output I see when running in Docker

(Run Starting)

  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
  โ”‚ Cypress:  3.3.0                                                            โ”‚
  โ”‚ Browser:  Electron 61 (headless)                                           โ”‚
  โ”‚ Specs:    1 found (login/login_spec.js)                                    โ”‚
  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

I dont see the info messages when running in my local development environment. This is the output header when I run locally
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Cypress: 3.3.0 โ”‚ โ”‚ Browser: Electron 61 (headless) โ”‚ โ”‚ Specs: 11 found (company_profile/company_profile_spec.js, reporting/reporting_config_speโ€ฆ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Versions

Cypress - 3.0.3
CentOS - 7
The browser is the default, Electron.

cli output regression v3.3.0

Most helpful comment

Hi, am I missing a setting? I just upgraded to 3.3.1 and still getting noisy logs
[52894:0614/104827.806539:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806631:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806703:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806726:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glClear: framebuffer incomplete [52894:0614/104827.806745:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806765:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806786:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52892:0614/104828.340283:INFO:CONSOLE(162528)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools"

All 15 comments

Hey @rhythmicdevil, do you have any code within your cypress/plugins/index.js file?

@bahmutov Is this possible that the browser console logs are set up to log from the Docker container?

I don't see the browser config, but I do see React console.log message even
when running on Mac, we are investigating

On Mon, May 20, 2019 at 10:28 AM Jennifer Shehane notifications@github.com
wrote:

Hey @rhythmicdevil https://github.com/rhythmicdevil, do you have any
code within your cypress/plugins/index.js file?

@bahmutov https://github.com/bahmutov Is this possible that the browser
console logs are set up to log from the Docker container?

โ€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cypress-io/cypress/issues/4255?email_source=notifications&email_token=AAQ4BJSASEDV3IUDKOROXDTPWKYP3A5CNFSM4HOBD5Q2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVZAE3Q#issuecomment-494010990,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAQ4BJWYUF224FK3VR7HHOLPWKYP3ANCNFSM4HOBD5QQ
.

--
Dr. Gleb Bahmutov, PhD

Schedule video chat / phone call / meeting with me via
https://calendly.com/bahmutov
gleb.[email protected] @bahmutov https://twitter.com/@bahmutov
https://glebbahmutov.com/ https://glebbahmutov.com/blog
https://github.com/bahmutov

This is the content of the file cypress/plugins/index.js

    // ***********************************************************
    // This example plugins/index.js can be used to load plugins
    //
    // You can change the location of this file or turn off loading
    // the plugins file with the 'pluginsFile' configuration option.
    //
    // You can read more here:
    // https://on.cypress.io/plugins-guide
    // ***********************************************************

    // This function is called when a project is opened or re-opened (e.g. due to
    // the project's config changing)

    module.exports = (on, config) => {
      // `on` is used to hook into various events Cypress emits
      // `config` is the resolved Cypress config
    }

@rhythmicdevil Thanks, the plugins look good. It seems @bahmutov is able to partially reproduce the error, so now we can investigate.

There is a bug in 3.3.0 where we are accidentally leaking an environment variable that causes this when the verify and run stage is run together.

If you split out cypress verify from cypress run as a different docker step, it won't log this out. We'll get this fixed in a 3.3.1 patch.

Ok great. Thanks for the info.

The code for this is done in cypress-io/cypress#4281, but has yet to be released.
We'll update this issue and reference the changelog when it's released.

i get that issue too


[301:0522/234255.083832:INFO:CONSOLE(162422)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools", source: xx/__cypress/runner/cypress_runner.js (162422)
--
ย  | [301:0522/234255.631575:INFO:CONSOLE(118886)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools", source: xx/__cypress/runner/cypress_runner.js (118886)
ย  | [301:0522/234255.732192:INFO:CONSOLE(96850)] "Warning: Failed prop type: The prop `config.browsers` is marked as required in `App`, but its value is `undefined`.
ย  | in App (created by Container)
ย  | in Container", source: xx__cypress/runner/cypress_runner.js (96850)
ย  | [301:0522/234259.379345:INFO:CONSOLE(61945)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools",


Released in 3.3.1.

Same info message after upgrading to 3.3.1 in DEBUG=cypress:* mode:

cypress:server:browsers:electron console message: { column: 15, level: 'error', line: 96956, source: 'console-api', text: 'Warning: Failed prop type: The prop `config.browsers` is marked as required in `App`, but its value is `undefined`.\n    in App (created by Container)\n    in Container', url: 'http://localhost:8080/__cypress/runner/cypress_runner.js' } +67ms

Jast warning.

Hey @iegik, it is intended that all the warning logs do log out when the DEBUG environment variable is set. This i expected behavior.

The original issue was that this warning logged when no DEBUG lot had been set.

Hi, am I missing a setting? I just upgraded to 3.3.1 and still getting noisy logs
[52894:0614/104827.806539:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806631:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806703:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806726:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glClear: framebuffer incomplete [52894:0614/104827.806745:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806765:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52894:0614/104827.806786:ERROR:gles2_cmd_decoder.cc(4439)] [.RenderWorker-0x7fb79780c200.GpuRasterization]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete [52892:0614/104828.340283:INFO:CONSOLE(162528)] "%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools"

It's not fixed! I'm using 3.3.2 and I have the same issue.

Probably somehow related to the changes in #4165. This code controls what stderr from the Electron process is printed and what is suppressed:

https://github.com/cypress-io/cypress/blob/bfec784e7a693ad8b153f2711270f5a491a83737/cli/lib/exec/spawn.js#L141-L158

If you comment out line 157, no stderr is printed. But I'm not sure what stderr should remain and what stderr should be removed. The problem is probably somewhere else in the PR, since it didn't change this code section at all.

Closing as resolved since there have been no comments on this in a year. Likely this output is no longer shown since one of our Electron upgrades.

If you're experiencing a bug similar to this in Cypress, please open a new issue with a fully reproducible example that we can run. There may be a specific edge case with the issue that we need more detail to fix.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

tahayk picture tahayk  ยท  3Comments

zbigniewkalinowski picture zbigniewkalinowski  ยท  3Comments

simonhaenisch picture simonhaenisch  ยท  3Comments

stormherz picture stormherz  ยท  3Comments

jennifer-shehane picture jennifer-shehane  ยท  3Comments