Search code examples
node.jstestingend-to-endcypress

Cypress CLI console output not very readable


I'm running cypress tests headlessly and would like the console output to be a little more readable. Currently, I get a very messy output as seen below. According to the documentation it should be using the Mocha SPEC reporter layout. Can anyone tell me what I need to do to make this output readable?

I'm running ./node_modules/.bin/cypress run

Started video recording: ←[36mC:\code\website\ui\cypress\videos\vf7hm.mp4←[39m

←[90m  (←[4m←[1mTests Starting←[22m←[24m)←[39m

←[0m←[0m
←[0m  My First Test←[0m
  ←[32m  ΓêÜ←[0m←[90m Gets, types and asserts←[0m←[31m (18965ms)←[0m


←[92m ←[0m←[32m 1 passing←[0m←[90m (21s)←[0m


←[32m  (←[4m←[1mTests Finished←[22m←[24m)←[39m

←[37m  - Tests:           ←[39m←[32m1←[39m
←[37m  - Passes:          ←[39m←[32m1←[39m
←[37m  - Failures:        ←[39m←[32m0←[39m
←[37m  - Pending:         ←[39m←[32m0←[39m
←[37m  - Duration:        ←[39m←[32m20 seconds←[39m
←[37m  - Screenshots:     ←[39m←[32m0←[39m
←[37m  - Video Recorded:  ←[39m←[32mtrue←[39m
←[37m  - Cypress Version: ←[39m←[32m1.4.2←[39m


←[36m  (←[4m←[1mVideo←[22m←[24m)←[39m

  - Started processing:   ←[36mCompressing to 32 CRF←[39m
  - Finished processing:  ←[36mC:\code\website\ui\cypress\videos\vf7hm.mp4←[39m ←
[90m(1 second)←[39m


←[90m  (←[4m←[1mAll Done←[22m←[24m)←[39m

Solution

  • The messy output is because Cypress is using ANSI color escape characters to format the output, which your log viewer/console doesn't understand. You can disable the output of ANSI color control characters by setting the environment variable NO_COLOR:

    NO_COLOR=1 cypress run

    See https://docs.cypress.io/guides/continuous-integration/introduction#Colors

    This was added in Cypress 3.0.0, released on 5/29/2018.