我在Python 2.7.8下使用机器人框架3.0。机器人框架的文档(http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#programmatic-logging-apis)指出:
除了新的公共日志记录API外,Robot Framework还为Python的标准日志记录模块提供了内置支持。这样可以使模块的根记录器收到的所有消息自动传播到Robot Framework的日志文件。
我做了一个简短的库文件来测试:
from logging import debug, error, info, warn
def try_logging():
info("This is merely a humble info message.")
debug("Most users never saw me.")
warn("I warn you about something.")
error("Something bad happened.")
我的测试用例是:
*** Test Cases ***
Logtest
Try logging
当我运行它时,它是通过的情况,但是没有任何东西记录到HTML日志中。测试执行日志具有适当的名称,大小写和关键字,但是当我展开它们时,仅记录“开始/结束/经过”行。
如何将Python记录器消息转发给Robot?如您所见,所谓的自动传播不会自动进行。我的目标是编写一个可以在有或没有Robot Fw的情况下运行的库。
请提前为您提供帮助。
经过数小时的代码挖掘,我设法找到了答案。我认为值得分享,如果遇到类似问题,可能会对您有所帮助。
就我而言,我导入了一些未使用的库。其中一个是在Robot Framework导入库文件时实例化的类。该对象的某些记录器设置破坏了默认设置,这就是为什么我在机械手日志中未得到任何结果的原因。
没有它,我无法获得预期的结果,并且自动传播效果很好。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。