概述
_logging模块用于Selenium2Library库本身输出打印信息。
模块没有定义公共方法,全部为私有方法,共7个私有方法。
解读
_logging模块的源码还是比较简单的,其定义的写日志方法都是对robot框架中的相关方法的封装。
其中_log_list方法应用了一种不常见的索引列表的写法,将布尔值作为索引值:True - 1、False - 0。
代码如下:
import os
import sys
from robot.api import logger
from keywordgroup import KeywordGroup
from robot.libraries.BuiltIn import BuiltIn
try:
from robot.libraries.BuiltIn import RobotNotRunningError
except ImportError:
RobotNotRunningError = AttributeError
class _LoggingKeywords(KeywordGroup):
# Private
def _debug(self, message):
logger.debug(message) # 封装robot的方法
# 略
def _log_list(self, items, what='item'):
# bool型作为列表的索引,True-1、False-0
msg = ['Altogether %d %s%s.' % (len(items), what, ['s',''][len(items)==1])]
for index, item in enumerate(items):
msg.append('%d: %s' % (index+1, item))
self._info('\n'.join(msg))
return items
def _warn(self, message):
logger.warn(message)