Colors 如何使用Robot Framework在控制台输出中添加颜色

Colors 如何使用Robot Framework在控制台输出中添加颜色,colors,robotframework,Colors,Robotframework,我想在RobotFramework的控制台输出中添加一些颜色 我尝试使用控制台颜色代码,如: ${message}= Set Variable hello world! Log To Console \\e[0;36;49m${message}\\e[0;39;49m (在linux控制台中,echo-e”\e[0;36;49mHello world!\e[0;39;49m”printHello world!青色) (我还尝试了一个\和\033[31m、\033[0m,…代码) 但它不起

我想在RobotFramework的控制台输出中添加一些颜色

我尝试使用控制台颜色代码,如:

${message}=  Set Variable  hello world!
Log To Console  \\e[0;36;49m${message}\\e[0;39;49m
(在linux控制台中,
echo-e”\e[0;36;49mHello world!\e[0;39;49m”
print
Hello world!
青色)

(我还尝试了一个
\
\033[31m、\033[0m,…
代码)

但它不起作用

那么,有没有可能采取如下措施:

${message}=  Set Variable  hello world!
Log To Console ${message.red}
我找到了,但没有找到任何关于如何使用它的信息:(

我试过:

Log To Console ${message.red}  robot.output.console.highlighting


但是没有一个是有效的:“(

我可以问一下你的总体目标吗?只是输出不同颜色的随机文本吗

以下是我如何在不同的测试用例上轻松发出通过/失败等信号,使它们脱颖而出:

--monitorcolors ansi

在运行测试套件的命令中,将上述内容包含在命令开头。

由于机器人框架对“\”的解释,
记录到控制台\\033[31mRed Text\\033[0m
不会对输出着色

要解决此问题,您必须在登录控制台之前对变量进行
评估

${message}=  Evaluate  "\\033[31mRed Text\\033[0m"
Log To Console  ${message}

我最终得到了下面的解决方案,我觉得它非常“干净”:

然后,您只需在套件/测试用例设置中使用previous关键字,就可以对输出着色,如下所示:

Log To Console  ${cyan}Some Text in cyan and a ${red}${variable}${cyan} in red${default}

我没有选项——MonitorColor,但我有——ConsoleColor,这似乎是对应的选项。这并没有解决我的问题:它会影响“通过”/“失败”启用颜色,但不影响其他输出颜色。很高兴您能够解决您的问题,抱歉,我的回答太离谱了,我假设您希望颜色通过/失败,并将其限定为清晰。您的评论让我问自己正确的问题,这让我走上了回答的道路,非常感谢;-)
*** Variables ***
${BLACK}  "\\033[30m"
${RED}    "\\033[31m"
# More colors ANSI codes...

*** Keywords ***
Initialize Colors
  ${black}=  Evaluate  ${BLACK}
  Set Test Variable  ${black}
  ${red}=  Evaluate  ${RED}
  Set Test Variable  ${red}
  # More colors...
Log To Console  ${cyan}Some Text in cyan and a ${red}${variable}${cyan} in red${default}