【问题标题】:Cypress CLI console output not very readable赛普拉斯 CLI 控制台输出不太可读
【发布时间】:2018-02-06 02:51:10
【问题描述】:

我正在无头地运行 cypress 测试,并且希望控制台输出更具可读性。目前,我得到一个非常混乱的输出,如下所示。根据文档,它应该使用 Mocha SPEC 报告器布局。谁能告诉我我需要做什么才能使这个输出可读?

我正在运行./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

【问题讨论】:

  • 那些是字体着色序列和控制字符。尝试关闭颜色输出?
  • 我似乎没有开启颜色输出。虽然,既然您提到了这一点,是否有可能只是 Windows 不支持记者的着色?我在 windows7 命令提示符下运行它。
  • 是的。这就是为什么如果您可以在应用级别关闭它,就可以解决这个问题。
  • 我想知道你是否不能grep 输出命令序列。他们很有特色。 sed 实际上。可能powershell也可以。
  • 似乎他们在更高版本中添加了我认为应该是表格边框的内容:┌───┠等等。

标签: node.js testing end-to-end cypress


【解决方案1】:

混乱的输出是因为赛普拉斯使用 ANSI 颜色转义字符来格式化输出,而您的日志查看器/控制台不理解。您可以通过设置环境变量NO_COLOR来禁用ANSI颜色控制字符的输出:

NO_COLOR=1 cypress run

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

这是在Cypress 3.0.0, released on 5/29/2018 中添加的。

【讨论】:

  • 找不到第一个链接的页面!
【解决方案2】:

可能是两个问题:


  1. Cypress 使用 ANSI 颜色,Jenkins 未配置为转换此颜色。

修复:安装这样的插件:https://plugins.jenkins.io/ansicolor/


  1. 编码可能不是 UTF-8(虽然看起来你的是,但其他人可能不是)

修复:

  • 导航:Manage Jenkins => Configure System => Global Properties
  • 添加环境变量:
JAVA_TOOL_OPTIONS
-Dfile.encoding=UTF-8

【讨论】:

  • 我得到了 ansicolor 插件。它似乎适用于某些事情,但它没有拾取柏树字符。我需要为此做一些特殊的配置吗?
【解决方案3】:

我遇到了同样的问题,而且我无法将 ANSI 颜色插件添加到我的 Jenkins,所以我只是在测试用例运行命令之前添加了 NO_COLOR=1,如下所示:

NO_COLOR=1 npx cypress run

将此代码添加到我的命令中解决了我的问题,这是一种简单的方法,您甚至不需要添加任何其他插件。

【讨论】:

    【解决方案4】:

    据我所知,这是赛普拉斯的 Windows 输出中的一个问题:https://github.com/cypress-io/cypress/issues/1143

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-26
      • 1970-01-01
      • 2020-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多