robot.api 包公开的公共api机器人框架

除非另有声明,公开的api在这个包中被认为是稳定的, 从而构建外部工具时,安全使用的机器人框架。

目前暴露api:

  • logger 模块测试库的日志的目的。
  • deco 模块使用decorator测试库可以使用。
  • 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 name =None 标签=() 

修饰符来设置自定义关键字名称和标记函数和方法。这个修饰符创建 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():
# ...

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(msglevel='INFO'html=False)

将消息写入日志文件使用给定的标准。

有效的日志级别 跟踪 调试 信息 (默认robotframework 2.9.1), 警告 错误 在robotframework2.9(新)。 此外它是 可以使用 HTML 伪日志级别,日志消息为HTML 使用 信息的标准

而不是使用这种方法,通常最好使用标准具体方法如 信息 和 调试 有单独的 html 参数控制消息格式。

robot.api.logger.trace(msghtml=False)

将消息写入日志文件使用 跟踪 的标准。

robot.api.logger.debug(msghtml=False)

将消息写入日志文件使用 调试 的标准。

robot.api.logger.info(msghtml=Falsealso_console=False)

将消息写入日志文件使用 信息 的标准。

如果 also_console 参数设置为 真正的 ,消息是 写日志文件和控制台。

robot.api.logger.warn(msghtml=False)

将消息写入日志文件使用 警告 的标准。

robot.api.logger.error(msghtml=False)

将消息写入日志文件使用 错误 的标准。

2.9新机器人框架。

robot.api.logger.console(msgnewline=Truestream='stdout')

写消息到控制台。

如果 换行符 参数是 真正的 一个换行符 自动添加到消息。

默认情况下,消息写入到标准输出流。 使用标准错误流可能是提供 流 参数值 “stderr” 

robot API笔记1的更多相关文章

  1. robot API笔记6

    robot.libraries 计划举办机器人框架标准测试库. 图书馆是主要用于外部的测试数据,但是他们可以 也使用自定义测试库是否有必要. 特别是 的内装式 图书馆通常是有用的 当需要与框架. 因为 ...

  2. robot API笔记5

    实现了 Libdoc 工具. 命令行Libdoc入口点和编程接口 提供的是单独的吗 robot.libdoc 模块. 这个包被认为是稳定的但不是公共API的一部分. robot.libdocpkg.L ...

  3. robot API笔记4

    robot.htmldata包 包编写HTML格式的输出文件. 这个包被认为是稳定的但不是公共API的一部分. robot.htmldata.htmlfilewriter module classro ...

  4. robot API笔记3

    robot.htmldata package 包编写HTML格式的输出文件. 这个包被认为是稳定的但不是公共API的一部分. Submodules robot.htmldata.htmlfilewri ...

  5. robot API笔记2

    robot.conf 设计方案 实现设置测试执行和输出处理. 这个方案实现了 RobotSettings 和 RebotSettings 内部使用的类 该框架. 不应该有这些类需要使用外部.这个包可以 ...

  6. Python Socket API 笔记

    将上节中的C#该成Python版的容易程度大大超出了我的意料之外.从来没有发现,仅仅用灰尘简单的几句话就实现了该程序的主要功能,可见python的简易和强大之处.这里先对SocketAPI 做一下总结 ...

  7. JS全部API笔记

    我相信对于程序猿都有做笔记的习惯. 我初学到现在也做了不少笔记,以前,总是怕写的文章或者好的内容分享出来就怕被直接copy以后更个名就不再是你的. 但通过博客园,学习到不少东西,人家都不怕什么了,我自 ...

  8. robot framework笔记(一):环境配置(基于python3)+在pycharm中编写及运行robot脚本

    (一)使用pip安装robotframework框架和seleniumlibrary库 pip install --upgrade robotframework pip install --upgra ...

  9. UICollectionView基础API笔记

    UICollectionView系列API,属性含义笔记.在UICollectionView笔记1中我们了解了UICollectionView是什么,以及可以做什么:在UICollectionView ...

随机推荐

  1. Struts2的类型转换

    Struts2的类型转换 类型转换的作用: HTTP请求都是字符串类型,需要把这些字符串类型转化成相应的数据类型,使得Web应用的控制组件可以使用. 1.內建的类型转换器 Struts2可以完成大多数 ...

  2. 复旦大学2014--2015学年第一学期(14级)高等代数I期末考试第七大题解答

    七.(本题10分)  设 \(V\) 为数域 \(\mathbb{K}\) 上的 \(n\) 维线性空间, \(S=\{v_1,v_2,\cdots,v_m\}\) 为 \(V\) 中的向量组, 定义 ...

  3. SqlSever基础 detalength函数 字节的个数

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  4. Android开发开始--环境搭建

    一.搭建Android开发环境 1.JDK (Java Development Kit) 2.Eclipse 3.Android SDK (Software Development Kit) 4.AD ...

  5. (1)建立一个名叫Cat的类: 属性:姓名、毛色、年龄 行为:显示姓名、喊叫 (2)编写主类: 创建一个对象猫,姓名为“妮妮”,毛色为“灰色”,年龄为2岁,在屏幕上输 出该对象的毛色和年龄,让该对象调用显示姓名和喊叫两个方法。

    package lianxi; public class Cat { String Name, Color; int Age; void getName() { System.out.println( ...

  6. zoj 1199 几何公式推导

    链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=199 Point of Intersection Time Limit:  ...

  7. C# 线程(一)

    From : http://www.cnblogs.com/miniwiki/archive/2010/06/18/1760540.html 文章系参考转载,英文原文网址请参考:http://www. ...

  8. FLASH CC 2015 CANVAS (五)loading的制作

    注意 此贴 为个人边“开荒”边写,所以不保证就是最佳做法,也难免有错误! 正式教程会在后续开始更新 AS3的loading一般我们都写在时间轴第一帧,但是FLASH CC CANVAS的导出项目的lo ...

  9. Oracle VM VirtualBox 虚拟机与主机共享文件

    安装增强功能(参考文档) VirtualBox自带了一个增强工具Sun VirtualBox Guest Additions,这是实现虚拟机与真实主机共享的关键.启动虚拟机后,点击控制菜单“设备”→“ ...

  10. 三大域对象的使用总结request域 + session域 +

    request域: servlet 产生数据显示完后,就没用了. session域:数据除了显示之外,等一会还要用. servletContext域: 数据除了显示之外不仅还要用还要给其他人用.