机器人框架:打印语句实际上可以在任何地方输出

ewo*_*wok 3 python robotframework

当一个关键字有一个print语句时,该输出实际上是在运行测试时的任何地方吗?例如:

Lib.py

def message(msg):
  print 'your message is ' + msg
  return True
Run Code Online (Sandbox Code Playgroud)

Tests.robot

*** Settings ***
Library    Lib

*** Test Cases ***
Case1
    message    "hello"
Run Code Online (Sandbox Code Playgroud)

如果我跑pybot Tests.robot,有什么地方我可以看到'your message is hello'得到打印,或者输出是否无处可去?

Ken*_*ock 6

是的,它们被捕获并作为LOG条目输入到输出中.

运行测试后,打开log.html,转到调用libraries关键字的条目,然后您将看到一个LOG条目,其中包含print语句的输出.

RobotFramework库记录信息

记录信息

异常消息不是向用户提供信息的唯一方式.除此之外,方法还可以通过写入标准输出流(stdout)或标准错误流(stderr)将消息发送到日志文件,甚至可以使用不同的日志级别.另一种(通常更好的)日志记录可能性是使用编程日志API.