在Jenkins上Behave test runner没有彩色输出
我已经在EC2实例的Ubuntu服务器14.04上安装了jenkins。 我有一些硒测试,我执行使用behave
作为测试跑步者。
在Jenkins上,我还安装了插件AnsiColor,希望能够在jenkins控制台上获得颜色输出,但除了Gherking语法外,其他所有内容都可以使用颜色。 硒错误,python调试,一切都有颜色... 除了行为的输出。
现在的事情是,如果我在Mac或Ubuntu上运行测试,但不与Jenkins用户一起运行,那么一切正常,颜色在那里。
我真的没有任何代码发布,但我可以说我曾试图无效:
behave --color
formatter/ansi_escapes.py
找到的行为转义序列 #!/bin/bash
给jenkins构建脚本以确保它不会用sh
而不是bash
执行 如果这与任何相关我在virtualenv
上使用python 3.4
除了实际的答案之外,任何关于如何调试的建议都是值得欢迎的! 谢谢
阅读PrettyFormatter
原始源代码,没有办法强制它使用颜色,因为它使用isatty
来确定它是否写入实际终端。
但是,启用彩色输出的必要修改是微不足道的:
https://github.com/mrkafk/behave/commit/5fa2dd3fd1dc7149857df4da156d8fd00f5058a5
我创建了拉取请求并测试它在Jenkins中工作(在课程的项目配置中启用了解析ANSI代码之后):
链接地址: http://www.djcxy.com/p/27031.html