robot API笔记1
robot.api
包公开的公共api机器人框架
除非另有声明,公开的api在这个包中被认为是稳定的, 从而构建外部工具时,安全使用的机器人框架。
目前暴露api:
模块测试库的日志的目的。logger
模块使用decorator测试库可以使用。deco
TestCaseFile
,TestDataDirectory
,ResourceFile
类解析测试 数据文件和目录。 此外,方便工厂方法TestData()
要么创造TestCaseFile
或TestDataDirectory
基于输入的对象。TestSuite
类来创建可执行 测试套件以编程方式和TestSuiteBuilder
类 用于创建这些套件基于现有的文件系统上的测试数据。SuiteVisitor
抽象类testdata进行处理 之前执行。 这可以用作基础实现跑前 为使用修饰符——prerunmodifier
命令行选项。ExecutionResult()
工厂方法 阅读从XML输出文件和执行结果ResultVisitor
抽象类来缓解 进一步的处理结果。ResultVisitor
也可以用作基础 对于pre-Rebot纳入使用修饰符——prerebotmodifier
命令行选项。ResultWriter
类写作 报告、日志、XML输出,XUnit文件。 可以编写基于结果 文件系统上的XML输出,以及基于对象的结果 返回的ExecutionResult()
或 一个执行TestSuite
。
在命令行api相关的入口点直接接触 通过robot根包。
Submodules
robot.api.deco模块
robot.api.deco.keyword
-
修饰符来设置自定义关键字名称和标记函数和方法。这个修饰符创建
robot_name
和robot_tags
属性 装饰的关键字方法或函数。 机器人框架检查他们 分别确定关键字的名字和标签。library.py:
- @keyword(name='Login Via User Panel')
- def login(username, password):
- # ...
- @keyword(name='Logout Via User Panel', tags=['example', 'tags'])
- def logout():
- # ...
tests.robot:
- Login Via User Panel myusername mypassword
如果
的名字
没有得到的实际名称关键字不 影响,但robot_name
属性仍将被创建。 这可以用于将方法标记为关键字在动态库。 在这种用法可以在使用时也省略括号 装饰:- @keyword
- def func():
- # ...
- @keyword(name='Login Via User Panel')
robot.api.logger日志模块
公共日志API测试库。
这个模块提供了一个公共API的信息写入日志文件 和控制台。 测试库可以使用这个API:
- logger.info('My message')
而不是通过标准输出的日志:
- print '*INFO* My message'
除了编程接口被使用,这个API 有一个好处,日志消息有精确的时间。
如果日志方法的时使用robotFramework被没有运行, 消息重定向到标准的Python日志记录
模块使用logger命名 RobotFramework
。
日志级别
使用水平是可能的日志消息 跟踪
, 调试
, 信息
, 警告
和 错误
要么使用 write()
函数,或者更 通常,与特定的日志级别 trace()
, 调试()
, 信息()
, 警告()
, 错误()
功能。 的支持 在robotframework2.9错误级别和功能是新的。
默认情况下,跟踪和调试消息不但是可以记录 改变了的 ——loglevel
命令行选项。 警告和错误 自动写控制台和 测试执行错误 部分在日志文件中。
日志的HTML
所有方法用于写入到日志文件中有一个信息 可选 html
论点。 如果一条消息记录应该是 显示为HTML,应该设置为这个论点 真正的
。 另外, write()
接受一个伪日志级别 HTML
。
例子
- from robot.api import logger
- def my_keyword(arg):
- logger.debug('Got argument %s.' % arg)
- do_something()
- logger.info('<i>This</i> is a boring example.', html=True)
robot.api.logger.
write
(msg, level='INFO', html=False)-
将消息写入日志文件使用给定的标准。
有效的日志级别
跟踪
,调试
,信息
(默认robotframework 2.9.1),警告
,错误
在robotframework2.9(新)。 此外它是 可以使用HTML
伪日志级别,日志消息为HTML 使用信息的标准
。而不是使用这种方法,通常最好使用标准具体方法如
信息
和调试
有单独的html
参数控制消息格式。
robot.api.logger.
trace
(msg, html=False)-
将消息写入日志文件使用
跟踪
的标准。
robot.api.logger.
debug
(msg, html=False)-
将消息写入日志文件使用
调试
的标准。
robot.api.logger.
info
(msg, html=False, also_console=False)-
将消息写入日志文件使用
信息
的标准。如果
also_console
参数设置为真正的
,消息是 写日志文件和控制台。
robot.api.logger.
warn
(msg, html=False)-
将消息写入日志文件使用
警告
的标准。
robot.api.logger.
error
(msg, html=False)-
将消息写入日志文件使用
错误
的标准。2.9新机器人框架。
robot.api.logger.
console
(msg, newline=True, stream='stdout')-
写消息到控制台。
如果
换行符
参数是真正的
一个换行符 自动添加到消息。默认情况下,消息写入到标准输出流。 使用标准错误流可能是提供
流
参数值“stderr”
。
robot API笔记1的更多相关文章
- robot API笔记6
robot.libraries 计划举办机器人框架标准测试库. 图书馆是主要用于外部的测试数据,但是他们可以 也使用自定义测试库是否有必要. 特别是 的内装式 图书馆通常是有用的 当需要与框架. 因为 ...
- robot API笔记5
实现了 Libdoc 工具. 命令行Libdoc入口点和编程接口 提供的是单独的吗 robot.libdoc 模块. 这个包被认为是稳定的但不是公共API的一部分. robot.libdocpkg.L ...
- robot API笔记4
robot.htmldata包 包编写HTML格式的输出文件. 这个包被认为是稳定的但不是公共API的一部分. robot.htmldata.htmlfilewriter module classro ...
- robot API笔记3
robot.htmldata package 包编写HTML格式的输出文件. 这个包被认为是稳定的但不是公共API的一部分. Submodules robot.htmldata.htmlfilewri ...
- robot API笔记2
robot.conf 设计方案 实现设置测试执行和输出处理. 这个方案实现了 RobotSettings 和 RebotSettings 内部使用的类 该框架. 不应该有这些类需要使用外部.这个包可以 ...
- Python Socket API 笔记
将上节中的C#该成Python版的容易程度大大超出了我的意料之外.从来没有发现,仅仅用灰尘简单的几句话就实现了该程序的主要功能,可见python的简易和强大之处.这里先对SocketAPI 做一下总结 ...
- JS全部API笔记
我相信对于程序猿都有做笔记的习惯. 我初学到现在也做了不少笔记,以前,总是怕写的文章或者好的内容分享出来就怕被直接copy以后更个名就不再是你的. 但通过博客园,学习到不少东西,人家都不怕什么了,我自 ...
- robot framework笔记(一):环境配置(基于python3)+在pycharm中编写及运行robot脚本
(一)使用pip安装robotframework框架和seleniumlibrary库 pip install --upgrade robotframework pip install --upgra ...
- UICollectionView基础API笔记
UICollectionView系列API,属性含义笔记.在UICollectionView笔记1中我们了解了UICollectionView是什么,以及可以做什么:在UICollectionView ...
随机推荐
- js与C++交互及C++解析json
转载:http://zhidao.baidu.com/link?url=LLuWzwMmpfVcQeSGv1CrAfRXpnZaetm9xypqwMW6zxLhhKES-rITAsG0-Ku-bSMA ...
- merge into的用法
merge into 是英文的一个短语,意思是汇入,合并.顾名思义,merge into是合并了insert和update操作,其执行效率要高于分别单独执行insert和update语句. //创建表 ...
- C++函数前和函数后加const修饰符区别
class Test(){ public: Test(){} const int foo(int a); const int foo(int a) const; }; 一.概念 当const在函数名前 ...
- 关于directX最近的学习方案
目标:弄清楚如何渲染一个地形,以及人物坐标以及摄像机方向,弄清四大矩阵原理 实践: 1.再次学习矩阵相关知识 2.实现红龙本书的地形 3.搜寻这方面资料书籍
- asynchronous vs non-blocking
http://stackoverflow.com/questions/2625493/asynchronous-vs-non-blocking In many circumstances they a ...
- MusigCV安装
首先,将下载的安装文件zip包,http://www.mathworks.com/products/compiler/mcr/ MCR2013a 然后依次执行下面的命令: 进入目录:cd /tmp 解 ...
- Nessus基本命令
/etc/init.d/nessusd start 启动nessusd服务 默认端口8834 添加用户(未知是什么用户) sudo /opt/nessus/sbin/nessus-adduser
- [SAP ABAP开发技术总结]EXIT-COMMAND
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- More Effective C++ (2)
接下来的是more effective c++ 11至20条款: 11.禁止异常信息(exceptions)传递到析构函数外.析构函数的调用情况可能有两种:(1)对象正常销毁 (2)异常传播过程中的栈 ...
- 工具配置(eclipse/plsql)
PLSQL 附常用配置: PrefAutomaticStatistics=True SelectedStatNames= AutoSelectSQL=True ShowSQLWindowGutte ...