用于从后台线程记录到robot框架日志的帮助器模块。

robotbackgroundlogger的Python项目详细描述


此帮助器模块缩进以供robot框架测试库使用 使用线程在后台运行关键字并且希望这些线程 才能登录。默认情况下,作为explained in Robot Framework User Guide, 使用编程api的线程记录的消息将被忽略,并且结果 未定义使用标准输出的日志记录。

此模块提供了一个自定义记录器,其工作原理与标准 robot.api.logger,但也存储由后台线程记录的消息。 它还提供了一种方法,主线程可以使用该方法转发记录的 发送到Robot框架日志的消息。

robot后台记录器托管在Github中,可以找到下载 从PYPI开始。使用pip安装最简单:

pip install robotbackgroundlogger

从版本1.2开始,这个模块同时支持Python2和Python3。

用法

记录器可以这样使用:

fromrobotbackgroundloggerimportBackgroundLoggerlogger=BackgroundLogger()

之后logger可以像robot.api.logger

logger.debug('Hello, world!')logger.info('<b>HTML</b> example',html=True)

当主线程使用时,消息将立即被记录,就像 用robot.api.logger。当被其他线程使用时,将存储消息 在内部。以后主线程可以通过运行:

logger.log_background_messages()

如果只想记录某个线程记录的消息,可以使用 将线程的名称作为参数传递:

logger.log_background_messages('Example thread')

记录的消息也会从内部消息存储中删除。它是 也可以在不记录的情况下执行此操作:

# Remove all messageslogger.reset_background_messages()# Remove messages logged by the named threadlogger.reset_background_messages('Another thread')

示例

example.pyexample.robot使用的库显示了 模块可以在实践中使用。您可以运行以下示例:

pybot example.robot

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓 studio安装的java Unity本机广告   java如何将映射转换为对象   java我试图使用rest控制器从h2数据库中检索记录,但它说没有数据集   反思为什么会抛出java。lang.InstanceException?   在opensuse中找不到Java/javac   java为Android上的谷歌地图添加了5900多个标记。如何有效地做   java如何在if语句中使用循环   java如何在JPA(Hibernate)中映射一对多关系和复合主键?   如何在Java中读取和写入外部进程?   Java线程。睡眠时间最短   java使用EclipseGradle插件如何离线托管和使用依赖项(库jar文件)   java为什么虚拟引用在排队时没有被清除?   java无法理解如何创建用于响铃报警的取消按钮   java解析不应通过注入容器错误发生   java Toast或ProgressDialog不显示   java在自定义对象上使用优先级队列的更好方法   java格式的。wmv文件。(或者任何视频文件都很好)   从页面调用另一个侦听器后,不会调用java JSF<f:ajax>侦听器   java注释ConfigApplicationContext不能多次刷新有什么原因吗?