robot API笔记6

robot.libraries

计划举办机器人框架标准测试库。

图书馆是主要用于外部的测试数据,但是他们可以 也使用自定义测试库是否有必要。 特别是 的内装式 图书馆通常是有用的 当需要与框架。

因为使用机器人框架库记录的文档 语法,生成的API文档并不良好。 因此更好的 找到生成的库文件

robot.libraries.BuiltIn

robot.libraries.BuiltIn.run_keyword_variant(resolve)
classrobot.libraries.BuiltIn.BuiltIn

案例: robot.libraries.BuiltIn._Verify robot.libraries.BuiltIn._Converter ,robot.libraries.BuiltIn._Variables robot.libraries.BuiltIn._RunKeyword ,robot.libraries.BuiltIn._Control robot.libraries.BuiltIn._Misc

一个总是可用的标准库经常需要的关键词。

内装式 是机器人框架的标准库,它提供了一组吗 通用的关键字需要经常。 它是自动导入 因此总是可用的。 例如,可以使用提供的关键字 为验证(如。 应该是平等的 应该包含 ), 转换(如。 转换为整数 )和其他各种用途 (如。 日志 睡眠 运行关键字如果 设置全局变量 )。

= = HTML错误消息

的许多关键字接受一个可选错误消息使用关键字 失败。 从机器人Framework 2.8开始,可以使用HTML 这些消息通过加上前缀 * HTML * 。 看到 失败 关键字为 一个使用的例子。 请注意,在消息并不局限于使用HTML 内装式图书馆但与任何错误消息。

对表达式求值= =

等关键字 评估 运行关键字如果 和 应该是真的 , 在Python中接受一个表达式求值。 这些表达式是 评估使用Python的 ( https://docs.python.org/2/library/functions 。 html # eval | eval)功能 像所有的Python内置 len() 和 int() 是可用的。 评估 允许配置执行名称空间使用自定义模块, 和其他关键字( https://docs.python.org/2/library/os . html |操作系统) 和[https://docs.python.org/2/library/sys 。 html | sys)模块 自动。

当一个变量用于表达使用正常 变量$ { } 语法,它的值是取代之前的表达式进行求值。 这 意味着使用的价值将字符串表达式 表示变量的值,而不是变量值本身。 这不是一个问题,数字和字符串的其他对象 表示可以直接评估,但与其他对象 的行为依赖于字符串表示。 最重要的是, 字符串必须被引用,如果他们可以包含换行,他们必须 三重引用。

从机器人Framework 2.9开始,自动变量本身 在评价名称空间。 他们可以使用特殊的访问 变量的语法没有大括号 $变量 。 这些 变量不应引用,事实上他们甚至没有更换 在字符串。

注意,而不是创建复杂的表达式,它往往是更好的 移动到一个测试库的逻辑。

=布尔参数=

一些关键字接受处理为布尔值true或参数 假的。 如果这样的一个论点是作为一个字符串,它被认为是错误的 它是否为空或不区分大小写 假 或 没有 。 关键词验证允许下降实际和预期值的东西 从可能的错误消息也考虑字符串 没有 值 是假的。 其他字符串被认为是真正的不管他们的价值,以及其他 使用相同参数类型进行测试 ( http://docs.python.org/2/library/stdtypes.html真实价值 测试|规则 在Python中)。

真实的例子:

错误的例子:

注意,之前一些机器人Framework 2.9关键词考虑所有 非空字符串,包括 假 和 没有 ,是真的。

= =多行字符串比较

应该是平等的 和 应该等于作为字符串 报告失败使用 ( https://en.wikipedia.org/wiki / Diff_utility # Unified_format |统一的diff 格式)如果两个字符串有超过两行。 新的机器人框架 2.9.1。

结果在以下错误信息:

ROBOT_LIBRARY_SCOPE= 'GLOBAL'
ROBOT_LIBRARY_VERSION= '3.0.1.dev20151231'
call_method(objectmethod_name*args**kwargs)

调用指定的方法给定对象的参数提供。

可能的返回值的方法,可以返回 分配给一个变量。 关键字如果对象没有失败 方法用给定的名称或者执行提出了一个方法 例外。

支持 * * kwargs 新的机器人框架2.9。 因为这 可能的等号其他参数必须逃跑 反斜杠像

catenate(*items)

链状的给定的物品一起并返回结果的字符串。

默认情况下,项目加空格,但是如果第一项 包含字符串 分隔符= < 9 > 的分隔符 < 9 > 是 而不是使用。 必要时物品转换成字符串。

comment(*messages)

显示给定的消息日志文件的关键字参数。

这个关键字并没有接收到的参数,但当他们 日志中是可见的,这个关键字可以用来显示简单吗 消息。 给定的参数是如此彻底,他们甚至可以忽略 包含不存在的变量。 如果你感兴趣的变量 值,您可以使用 日志 或 日志很多 关键词。

continue_for_loop )

跳过当前的for循环迭代和继续下。

跳过其余当前for循环迭代和关键词 从下一个继续。 可以直接使用for循环或 在一个循环使用的关键字。

看到 持续循环如果 有条件地继续一个for循环 使用 运行关键字如果 关键词或其他包装器。

2.8新机器人框架。

continue_for_loop_if(condition)

如果跳过当前的for循环迭代 条件 是真的。

一个包装 持续循环 继续一个for循环 给定的条件。 评估使用相同的状况 语义与 应该是真的关键字。

2.8新机器人框架。

convert_to_binary(itembase=Noneprefix=Nonelength=None)

将给定的条目转换为二进制字符串。

的 项 ,一个可选的 基地 首先转换为一个 整数使用 转换为整数 在内部。 后,这 转换为二进制数(基础2)表示成一个 字符串等 1011年 

返回值可以包含一个可选的 前缀 ,可以 需要的最低限度 长度 (不包括前缀和一个 负号)。 如果该值为最初短于 所需的长度,它是用零填充。

另请参阅 转换为整数 转换为八进制 和 转换为十六进制 

convert_to_boolean(item)

将给定的条目转换为布尔值true或false。

处理字符串 真正的 和 假 (不区分大小写)正如预期的那样, 否则返回项的 (http://docs.python.org/2/library/stdtypes 。 html真理# |真值) 使用Python的 布尔值() 方法。

convert_to_bytes(inputinput_type='text')

将给定的 输入 根据对字节 要发送 

有效的输入类型下面列出:

  • 文本: 将文本转换为字节字符的字符。 所有 字符可以使用序数低于256和转换 字节相同的值。 许多人物简单的代表 使用转义,像  x00 或  xff 。 同时支持Unicode 字符串和字节。
  • int(警官): 将字节整数用空格分开。 同样作为 与 转换为整数 ,可以使用二进制、八进制或 通过加前缀值和十六进制值 0 b 0啊 ,或 0 x , 分别。
  • 十六进制: 将十六进制值转换为字节。 单字节总是 (如两个字符长。 01 或 FF )。 空间被忽略和 可以使用自由作为视觉分隔符。
  • 本: 将二进制值转换为字节。 单字节总是8 字符(如。 00001010 )。 空间,可以忽略 自由作为视觉分隔符。

除了给输入一个字符串,可以使用 列表包含单个字符或数字或其他iterable。 在这种情况下数据不需要填充一定的长度和 他们不能包含额外的空间。

使用 编码字符串字节 在 字符串 如果你需要,图书馆 将文本转换为字节使用一个特定的编码。

新机器人2.8.2框架。

convert_to_hex(itembase=Noneprefix=Nonelength=Nonelowercase=False)

将给定的条目转换为十六进制字符串。

的 项 ,一个可选的 基地 首先转换为一个 整数使用 转换为整数 在内部。 后,这 转换为十六进制数(基地16)表示为 一个字符串,如 FF0A 

返回值可以包含一个可选的 前缀 ,可以 需要的最低限度 长度 (不包括前缀和一个 负号)。 如果该值为最初短于 所需的长度,它是用零填充。

默认值作为一个大写字母字符串返回,但是 小写字母 参数(见一个真正的价值 布尔参数 )转 价值(但不是给定前缀)小写。

另请参阅 转换为整数 转换为二进制 和 转换为八进制 

convert_to_integer(itembase=None)

将给定的条目转换为一个整数的数字。

如果给定的项是一个字符串,默认情况下将一个 整数基地10。 有两种方法可以从其他基地:

  • 给关键字作为基本明确 基地 论点。
  • 前缀与基地以便给定字符串 0 b 意味着二进制 (基础2), 0啊 意味着八进制(基地8),0 x 意味着十六进制(基地16)。 前缀是只有当 基地 参数没有给出 本身可能是正负符号前缀。

语法不区分大小写和可能的空间将被忽略。

另请参阅 转换为数字 转换为二进制 转换为八进制 转换为十六进制 转换为字节 

convert_to_number(itemprecision=None)

将给定的条目转换为浮点数。

如果可选 精度 是正数或零,返回的号码吗 是小数四舍五入。 消极的精度意味着 数量是四舍五入为最接近10的倍数 的绝对精度。 如果一个同样接近一定数量 精度,它总是圆形远离零。

注意机器一般不能存储浮点数 准确。 这可能导致意外与这些数字 而且当他们是圆形的。 

如果你需要一个整数数字,使用 转换为整数 代替。

convert_to_octal(itembase=Noneprefix=Nonelength=None)

把给定的条目转换为八进制字符串。

的 项 ,一个可选的 基地 首先转换为一个 整数使用 转换为整数 在内部。 后,这 被转换为一个八进制数(基地8)表示成一个 字符串等 775年 

返回值可以包含一个可选的 前缀 ,可以 需要的最低限度 长度 (不包括前缀和一个 负号)。 如果该值为最初短于 所需的长度,它是用零填充。

convert_to_string(item)

将给定的条目转换为Unicode字符串。

使用 __unicode__ 或 __str__ 与Python对象和方法 toString 与Java对象。

使用 编码字符串字节 和 解码字节字符串 关键字 在 字符串 图书馆如果需要在Unicode和字节之间进行转换 使用不同的编码的字符串。 使用 转换为字节 如果你只是 想要创建字节字符串。

create_dictionary(*items)

根据给定的项目创建并返回一个字典。

项目有使用 键=值 语法一样 & {词典} 变量是在变量中创建表。 两个键和值 可以包含变量,和可能的等号密钥可以逃吗 这样的一个反斜杠 逃脱 =键=值 。 还可以 得到项目从现有字典通过简单地使用它们 & { dict } 

如果多次使用相同的关键,最后一个值优先。 返回的字典是有序的,并与字符串作为键值 也可以使用方便访问dot-access语法呢 $ { dict.key } 

这个关键字是在许多方面改变了在机器人框架2.9: ——从 集合 图书馆 内装式 。 ——也支持non-string键 键=值 语法。 ——弃用旧语法分别给键和值。 ——返回词典是命令和dot-accessible。

create_list(*items)

返回一个列表,其中包含给定的物品。

返回的列表可以被分配 $ {标量} 和 @ {列表} 变量。

评估 evaluate(expressionmodules=Nonenamespace=None)

评估在Python中给定的表达式,并返回结果。

表达式 评估在Python中解释吗 评估 表达式 

模块 参数可以用来指定一个逗号分隔 进口的Python模块列表和添加到评估 名称空间。

名称空间 参数可以通过一个定制的评估 名称空间是一个字典。 可能的 模块 被添加到这个 名称空间。 这是机器人框架2.8.4中的一个新特性。

变量使用像 变量$ { } 在表达式替换吗 前评估。 变量也可以评价 名称空间和可以访问使用特殊的语法 $变量 。 这是机器人Framework 2.9中的一个新特性,它是解释更多 彻底的 评估表达式 

exit_for_loop )

停止执行的封闭循环。

退出的封闭循环并继续执行。 可以直接使用一个for循环或循环使用的关键字。

看到 退出循环如果 有条件地退出一个for循环 使用 运行关键字如果 关键词或其他包装器。

exit_for_loop_if(condition)

如果停止执行的封闭循环 条件 是真的。

一个包装 退出循环 退出一个for循环 给定的条件。 评估使用相同的状况 语义与 应该是真的关键字。

2.8新机器人框架。

fail(msg=None*tags)

失败测试用给定的消息并选择改变它的标签。

使用指定的错误消息 味精 论点。 可以使用HTML在给定的错误消息,同样 与任何其他关键字接受一个错误消息,加前缀 的错误 * HTML * 

可以修改当前测试用例的标签通过标签 后的消息。 从一个连字符(如标签。 回归 ) 删除和其他补充道。 修改标签使用 设置标签 和 删除标签 在内部,和语义设置和删除它们 与这些关键字是一样的。

看到 致命错误 如果你需要停止整个测试执行。

支持修改标签和第2.7.4机器人框架中添加了 HTML 2.8消息的支持。

fatal_error(msg=None)

停止整个测试执行。

测试或套件,这与所提供的关键字使用失败 消息,后续测试失败消息罐头。 可能拆解将被执行。

看到 失败 如果您只希望无条件停止一个测试用例。

get_count(item1item2)

多少次的回报和日志 第二条 发现从 item1 

这个关键字使用Python字符串和列表和所有对象 ,要么 数 方法或可转换为Python列表。

get_length(item)

回报和原木的长度给定的项目作为一个整数。

长度的项目可以是任何东西,例如,一个字符串, 一个列表,或者一个映射。 关键字首先尝试得到的长度 Python函数 len ,它调用项目的 __len__ 方法 在内部。 如果失败,关键字试图调用项目的 可能的 长度 和 大小 直接的方法。 最后的尝试 试图让物品的的价值 长度 属性。 如果所有 这些尝试都失败,关键字失败。

另请参阅 长度应该是 应该是空的 和 不应该 空 

get_library_instance name =没有 所有= False )

返回指定测试的当前活动实例库。

这个字很容易使测试库进行交互 其他测试库的状态。 这是说明了 Python示例如下:

 

还可以使用这个测试数据和关键字 返回图书馆实例传递给另一个关键词。 如果一个 图书馆与自定义名称,进口 的名字 用于获取 实例必须这个名字而不是原始库名称。

如果可选参数 所有 给出一个真正的价值,然后呢 字典将返回所有库名称映射到实例。 这个功能是新的2.9.2机器人框架。

get_library_instance(name=Noneall=False)

在请求的格式返回给定的时间。

注意: DateTime 2.8.5包含库中添加机器人框架 更加灵活的关键词获得当前日期和时间 和一般意义上的日期和时间处理。

基于给定的返回时间是如何确定 格式 字符串,如下所示。 注意,所有的检查都是不区分大小写的。

  1. 如果 格式 包含这个词 时代 ,返回的时间 在秒后UNIX纪元(1970-01-01就是UTC)。 返回值始终是一个整数。
  2. 如果 格式 包含的任何单词 一年 月 一天 小时 最小值 ,或 证券交易委员会 ,只有选中的部分 返回。 返回的顺序总是一个部分 在前面的句子和单词的顺序 格式 并不重要。 作为在返回的部分 字符串(例如可能- > 05年 )。
  3. 否则(默认情况下)作为一个返回的时间 时间戳字符串的格式 2006-02-24 15:08:31 

默认情况下这个关键词返回当前本地时间,但是 可以改变使用 时间 论证如下解释。 注意所有检查包括字符串不区分大小写的。

  1. 如果 时间 是一个数字,或可以转换为一个字符串,该字符串 一个数字,它是UNIX纪元以来解释为秒。 这个文档最初写1177654467 秒后时代。
  2. 如果 时间 是一个时间戳,将使用时间。 有效的 时间戳格式 YYYY-MM-DD hh:mm:ss 名称 hhmmss 
  3. 如果 时间 等于 现在 (默认),当前的地方 使用时间。 这一次是使用Python的了time.time() 函数。
  4. 如果 时间 等于 UTC 当前时间 ( http://en.wikipedia.org/wiki / Coordinated_Universal_Time | UTC) 使用。 这次得到了使用 time.time() time.altzone在Python中。
  5. 如果 时间 在格式 现在 - - - - - - 一天 或 UTC 小时 30 最小值 ,当前的本地/ UTC时间+ / - 使用指定的时间字符串。 字符串格式的时间 附录中描述机器人框架的用户指南。

UTC时间2006-03-29 12:06:21):

支持UTC时间添加机器人框架2.7.5但事实并非如此 直到2.7.7正常工作。

get_time(format='timestamp'time_='NOW')

返回变量值或 默认的 如果变量是不存在的。

变量的名称可以被作为一个正常的变量名 (如。 $ {名称} (如)或逃跑的格式。 $ {名称} )。 请注意 前有一些局限性解释道 设置组变量 

看到 设置变量如果 另一个关键字来动态地设置变量。

get_variables no_decoration = False )

返回一个字典,其中包含所有变量在当前的范围。

返回变量作为一种特殊的字典,允许访问 变量在空间、案例,凸显不敏感的方式类似 访问变量的测试数据。 这本词典支持所有 与正常的Python字典和相同的操作,例如, 集合库可以用来访问或修改它。 修改 返回词典中可用的变量没有影响 当前的范围。

返回默认变量 $ { } @ { } 或 & { } 基于变量类型的装饰。 给一个真正的价值(见 布尔 参数 可选参数 no_decoration 将返回 没有装饰的变量。 这个选项是新的机器人 2.9框架。

注意:之前第2.7.4机器人框架变量被返回 一个自定义的对象不支持所有字典方法。

import_library(name*args)

进口一个图书馆与给定名称和可选参数。

此功能允许动态导入库,同时测试 正在运行。 这可能是必要的,如果图书馆本身是动态的 处理时,没有可用的测试数据。 在正常情况下, 图书馆应该进口使用图书馆设置中设置 表。

这字支持导入库使用图书馆 名称和物理路径。 使用路径时,他们必须 在绝对的格式或发现 (http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html pythonpath-jythonpath-and -ironpythonpath | 搜索路径)。 正斜杠可作为路径分隔符 操作系统。

可以导入的库并传递参数 命名参数语法如果库支持它。 与 的名字 语法可以用来导入库提供自定义名称。

import_resource(path)

进口资源文件的路径。

资源与这个关键词设置导入到测试套件的范围 同样在导入设置表使用资源 设置。

给定的路径必须是绝对的正斜杠可作为路径分隔符 操作系统。

import_variables(path*args)

进口一个变量与给定的文件路径和可选参数。

变量与这个关键词设置导入到测试套件的范围 同样在导入设置表中使用的变量 设置。 这些变量可能覆盖现有的变量 相同的名称。 这个功能可以用于导入新 变量,例如,对于每个测试在测试套件中。

给定的路径必须是绝对的。 正斜杠可作为路径分隔符 操作系统。

keyword_should_exist(namemsg=None)

失败除非给定关键字存在于当前的范围。

失败如果有多个具有相同名称的关键字。 适用于短的名称(如。 日志 )和全名 (如。BuiltIn.Log )。

可以覆盖默认的错误消息 味精 论点。

另请参阅 变量应该存在 

length_should_be(itemlengthmsg=None)

验证给定的项的长度是正确的。

项目的长度是有使用 得到长度 关键字。 的 默认错误消息可以被覆盖 味精 论点。

log(messagelevel='INFO'html=Falseconsole=Falserepr=False)

给定的日志消息用给定的水平。

有效的水平跟踪、调试信息(默认)、HTML、警告和错误。 低于当前活动日志消息将被忽略。 看到 设置日志级别 关键字, ——loglevel 命令行选项 更多细节关于设置的水平。

消息记录的警告或错误将自动水平 可见也在控制台和测试执行错误部分 在日志文件中。

日志可以使用可选的配置 html 控制台 和 repr 参数。 他们是默认关闭的,但可以启用 给他们一个真正的价值。 看到 布尔参数 节的更多 真假值的信息。

如果 html 参数是给定一个真正价值,将的消息 认为HTML和特殊字符,如 它不 逃脱了。 例如,日志 < img src = " image.png " > 创建一个 图像时 html 是真的,否则消息确切吗 字符串。 替代使用 html 参数是使用HTML 伪日志级别。 日志消息作为HTML使用信息的水平。

如果 控制台 论点是正确的,消息将被写入 控制台从除了测试执行是开始的地方 日志文件。 这个关键字总是使用标准输出流 和书面消息之后添加一个换行符。 使用 记录到控制台 相反,如果这些是不可取的,

如果 repr 论点是正确的,将通过给定的项 一个定制的版本的Python pprint.pformat() 函数之前 日志记录。 这是有用的,例如,当与字符串或合作 字节包含不可见字符,或在处理嵌套数据 结构。 自定义版本不同于标准,以便它 省略了 从Unicode字符串前缀,补充道 前缀 字节的字符串。

看到 日志很多 如果你想记录多个消息,和 记录到控制台 如果你只是想写到控制台。

参数 html 控制台 repr 新的机器人框架吗 2.8.2。

Pprint支持 repr 是新的用于机器人2.8.6框架, 放弃,这是改变 前缀和添加 前缀 在机器人框架2.9。

log_many(*messages)

给定的日志消息作为单独的条目使用信息的水平。

还支持日志列表和字典变量单独项目。

看到 日志 和 记录到控制台 如果您想要使用替代的关键词 日志级别、使用HTML或登录到控制台。

log_to_console(messagestream='STDOUT'no_newline=False)

给定的日志消息到控制台。

在默认情况下使用标准输出流。 使用标准的错误 流可能是提供 流 参数值 STDERR (不区分大小写)。

在默认情况下登录消息附加一个换行符。 这可以 残疾人提供 no_newline 参数(见一个真正的价值 布尔参数 )。

这个字没有日志消息到正常的日志文件。 使用 日志 关键字,可能与论点 控制台 ,如果想要的。

新机器人2.8.2框架。

log_variables(level='INFO')

记录所有变量在当前范围与给定的日志级别。

no_operation )

绝对不。

pass_execution(message*tags)

跳过当前的测试,安装或拆卸PASS状态。

可以使用此关键字测试数据的任何地方,但的地方 影响使用的行为:

  • 使用时在任何安装或拆卸(套件、测试或关键字),通过 安装或拆卸。 可能关键字拆解的开始 关键字执行。 不影响执行或状态 否则。
  • 在测试设置外部使用或拆卸时,通过特定的 测试用例。 可能的测试和执行关键字拆解。

可能可持续失败之前使用这个关键字,以及 失败执行拆解,将执行失败。

它是强制性的给一个消息通过解释执行。 默认情况下,消息被认为是纯文本,但从它开始* HTML * 允许使用HTML格式。

还可以修改测试标签传递标签后的消息 类似与 失败 关键字。 标记从一个连字符 (如。回归 )删除和其他补充道。 标签修改 使用 设置标签 和 删除标签 在内部,和语义 设置和删除它们与这些关键字是一样的。

通常包裹其他关键字,这个关键字等 运行关键字如果 ,通过基于条件。 最常见的情况 还可以处理 通过执行如果 :

通过执行的测试,安装或拆卸 小心使用。 在最坏的情况下会导致跳过所有的测试 部分可以发现问题在测试应用程序。 在这种情况下,执行外部因素不能继续做, 通常是更安全的失败的测试用例和非关键。

2.8新机器人框架。

pass_execution_if(conditionmessage*tags)

有条件地跳过当前测试,安装或拆卸PASS状态。

一个包装 通过执行 跳过当前测试, 安装或拆卸 条件 。 的条件是 同样与评估 应该是真的 关键字, 消息 和 *标记 有相同的语义 通过执行 

2.8新机器人框架。

regexp_escape(*patterns)

返回每个参数字符串转义用作一个正则表达式。

这个关键字可用于转义字符串使用 应该匹配正则表达式 和 不应该匹配正则表达式 关键词。

与Python的逃离了 re.escape() 函数。

reload_library name_or_instance )

重新检查关键字指定的库提供了什么。

可以调用显式地在测试数据或库本身 当关键字提供已经发生了变化。

图书馆可以通过它的名字或指定的活动实例 图书馆。 后者尤其有用,如果库本身 作为一个方法调用这个关键字。

2.9新机器人框架。

remove_tags(*tags)

删除给定 标签 从目前的测试或所有测试套件。

标签可以完全或使用一个模式 匹配 任何东西, 吗? 匹配一个字符。

这个关键字可以影响一个测试用例或者测试用例中 测试套件同样是 设置标签 关键字。

当前标签作为一个内置的变量 @ {测试 标签} 

看到 设置标签 如果你想添加特定的标签 失败 如果你想要 失败后的测试用例设置和/或删除标签。

repeat_keyword(repeatname*args)

多次执行指定的关键字。

的名字 和 arg游戏 定义执行同样的关键字 与 运行关键字 。 重复 指定(数)或多少次 多久时间(超时)关键字应该执行。

如果 重复 给出了计数,它指定了多少次 关键字应该执行。 重复 可以作为一个整数或 作为一个字符串,可以转换为一个整数。 如果它是一个字符串, 它可以有后缀 次 或 (案例和空间不敏感) 使表达更明确。

如果 重复 作为超时,它必须在机器人框架的 时间格式(如。 一分钟 最小值 年代 )。 单独使用一个数字 (如。 或 1.5 在这个背景下)不工作。

如果 重复 为零或负数,关键字不执行 所有人。 这个关键字不能立即如果任何执行 轮失败。

指定 重复 超时是新的机器人框架3.0。

replace_variables(text)

替换变量在给定的文本与当前值。

如果文本包含未定义的变量,该关键字失败。 如果给定的 文本 只包含一个变量,它的值是多少 按原样返回,它可以是任何对象。 否则这个关键字 总是返回一个字符串。

该文件 template.txt 包含 你好 $ {名称} ! 和变量 $ {名称} 的值 机器人 

return_from_keyword * return_values )

返回从封闭用户关键字。

这个字可以用来返回从用户关键字通过状态 没有完全执行。 也可以返回值 类似与 (返回) 设置。 对于更详细的信息 处理返回值,查看用户指南。

通常包裹其他关键字,这个关键字等 运行关键字如果 或 运行关键字,如果测试通过 ,返回 在一个条件:

可以使用这个关键字来返回从一个关键词也在里面 一个for循环。 以及返回值,这是证明了的发现指数 关键字在下面有些先进的例子。 注意,它通常是一个好主意将这种复杂的 逻辑到测试库。

 
 

最常见的用例中,返回一个表达式的基础上, 完成直接与 从关键字如果回来 。 这两个 关键词在机器人Framework 2.8新。

return_from_keyword_if(condition*return_values)

从封闭用户关键字如果返回 条件 是真的。

一个包装 从关键字 根据给定的返回 条件。 使用相同的语义条件评估 与 应该是真的 关键字。

给的例子一样 从关键字 ,我们可以重写 发现指数 关键字如下:

另请参阅 运行关键字并返回 和 运行关键字并返回 

2.8新机器人框架。

run_keyword(name*args)

用给定的参数执行给定的关键字。

因为关键字执行的名称作为一个参数,它 可以是一个变量,因此动态设置,如从一个返回值的 另一个关键字或从命令行。

run_keyword_and_continue_on_failure(name*args)

运行关键字并继续执行即使发生故障。

关键字名称和参数与工作 运行关键字 

如果不继续执行失败是由于无效的语法, 超时,或致命异常。 因为机器人框架2.9,变量被这个关键字错误。

run_keyword_and_expect_error(expected_errorname*args)

运行关键字和检查预期的错误发生。

预期的误差必须在相同的格式 机器人框架报告。 它可以是一个包含模式 字符 吗? 匹配任何单个的字符和 匹配任何数量的任何字符。 的名字 和 * args 有相同的语义 运行关键字

如果预期错误发生时,它可以返回的错误消息 被进一步加工/测试,如果需要的话。 如果没有错误,或 错误不匹配预期的错误,这个关键字失败。

错误造成的无效语法,不超时,或致命的异常 抓住了这个关键字。 因为机器人框架2.9,变量被这个关键字错误。

run_keyword_and_ignore_error ( name * args )

用给定的参数运行给定的关键字和忽略了可能的错误。

这个关键字返回两个值,所以首先是字符串 通过 或 失败 ,这取决于执行关键字的状态。 第二个值是关键字的返回值或 收到错误消息。 看到 运行关键字并返回状态 如果你是 只有感兴趣的执行状态。

关键字名称和参数的工作 运行关键字 。 看到 运行关键字如果 使用例子。

错误造成的无效语法,不超时,或致命的异常 抓住了这个关键字。 否则这个字本身永远不会失败。 因为机器人框架2.9,变量被这个关键字错误。

run_keyword_and_return (name * args )

从封闭运行指定的关键字并返回用户关键字。

关键字定义执行 的名字 和 * args 完全 像 运行关键字 。 运行关键字后,返回的 封闭用户关键字和可能的返回值 进一步执行关键字。 返回从一个关键字完全相同 语义与 从关键字 

使用 运行关键字并返回 如果你想运行关键字并返回 基于一个条件。

新机器人2.8.2框架。

run_keyword_and_return_if(conditionname*args)

从封闭运行指定的关键字并返回用户关键字。

一个包装 运行关键字并返回 并返回基于运行 给定的 条件 。 评估使用相同的状况 语义与 应该是真的 关键字。

使用 从关键字如果回来 如果你想返回一个特定的值 基于一个条件。

新机器人2.8.2框架。

run_keyword_and_return_status ( name * args )

运行给定的关键字使用给定的参数并返回一个布尔值的地位。

这个关键字返回布尔 真正的 如果所执行的关键字 成功和 假 如果它失败了。 这是有用的,例如,在 结合 运行关键字如果 。 如果你是感兴趣的错误 消息或返回值,使用 运行关键字而忽略错误 代替。

关键字名称和参数的工作 运行关键字 

错误造成的无效语法,不超时,或致命的异常 抓住了这个关键字。 否则这个字本身永远不会失败。

新机器人2.7.6框架。

run_keyword_if conditionname*args )

用给定的参数运行给定的关键字,如果 条件 是真的。

给定的 条件 评估在Python中解释吗 评估表达式 的名字 和 * args 具有相同的 语义与 运行关键字 

在这个例子中,只有 一些行动 或 另一个动作 是 执行,基于的状态 我的关键字 。 而不是 运行关键字 和忽略的错误 您还可以使用 运行关键字并返回状态 

变量使用像 变量$ { } 在上面的示例中, 在评价之前的表达式所取代。 变量也 在评价名称空间,可以使用特殊的访问 语法 $变量 。 这是机器人Framework 2.9中的一个新特性 解释更彻底 评估表达式 

从第2.7.4机器人版本开始,这个字也支持可选的 其他和其他分支。 这两个定义 * args 和 必须使用准确的格式 其他的 或 其他的 如果 ,分别。 其他的 分支机构必须包含第一个关键字的名称,然后执行 其可能的参数。 其他如果分支首先必须包含一个条件, 像这个关键字的第一个参数,然后执行关键字 及其可能的参数。 可以有其他分支 如果和其他有多个分支机构。

鉴于之前的例子,if / else构造也可以创建这样的:

返回值的一个关键字,或者没有被处决 没有关键字(即如果执行 条件 是假的)。 因此,它是 建议使用其他的和/或其他如果有条件地分配分支 返回值的关键字(有条件地分配固定的变量 值变量,明白了 设置变量如果 )。 这是说明的 在下面的例子:

在这个例子中,$ { var2 }将被设置为None如果$ { }条件是错误的。

请注意, 其他的 和 其他的 如果 必须使用控制字 明确,因此不能来自变量。 如果你需要使用 文字 其他的 和 其他的 如果 字符串作为参数,你可以逃跑 一个反斜杠 其他 其他 如果 

 使用属性它们包含的条件:

run_keyword_if_all_critical_tests_passed(name*args)

用给定的参数运行给定的关键字,如果所有关键测试通过。

这个关键字只能用于套件拆卸。 试图使用它 其他地方会导致一个错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

run_keyword_if_all_tests_passed 的名字 * args )

用给定的参数运行给定的关键字,如果所有测试通过。

这个关键字只能用于一套拆卸。 试图使用它 其他地方会导致错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

run_keyword_if_all_tests_passed(name*args)

用给定的参数运行给定的关键字,如果任何关键测试失败了。

这个关键字只能用于一套拆卸。 试图使用它 其他地方会导致错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

run_keyword_if_any_tests_failed ( name * args )

用给定的参数运行给定的关键字,如果一个或多个测试失败了。

这个关键字只能用于一套拆卸。 试图使用它 其他地方会导致错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

run_keyword_if_test_failed ( name  * args )

用给定的参数运行给定的关键字,如果测试失败了。

这个关键字只能用于测试拆卸。 试图使用它 其他地方会导致错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

机器人框架2.9之前的失败测试拆卸本身 没有检测到这个关键字。

run_keyword_if_test_passed ( name  * args )

用给定的参数运行给定的关键字,如果测试通过。

这个关键字只能用于测试拆卸。 试图使用它 其他地方会导致错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

机器人框架2.9之前的失败测试拆卸本身 没有检测到这个关键字。

run_keyword_if_timeout_occurred ( name  * args )

运行给定的关键字,如果一个测试或关键字发生超时。

这个关键字只能用于测试拆卸。 试图使用它 其他地方会导致错误。

否则,该关键字一样有效 运行关键字 ,看到它 文档以了解更多的细节。

run_keyword_unless(conditionname*args)

用给定的参数运行给定的关键字,如果 条件 是假的。

看到 运行关键字如果 为更多的信息和一个例子。

run_keywords(*keywords)

执行所有给定的关键字在一个序列。

这个关键字是在安装和拆卸时它们需要主要是有用的 照顾多个行为和用户创建一个新的更高的水平 关键字将是一个过度。

默认情况下所有参数预计将执行关键字。

从机器人框架2.7.6,关键词也可以运行 参数使用大写 和 作为一个关键字之间的分隔符。 关键字执行第一个参数是第一 直到第一个关键字和程序参数 和 是参数 到它。 第一个后第一个参数 和 第二个字和吗 直到下一个程序参数 和 是它的参数。 等等。

请注意, 和 参数必须显式地使用和控制 不能自己来自一个变量。 如果你需要使用文字 字符串作为参数,可以使用变量或逃避它 一个反斜杠 和 

set_global_variable(name*values)

在全球范围内提供一个变量在所有测试套件。

变量组与这个关键词在所有测试全局可用 病例和套件设置后执行。 设置变量与 这个字这样从命令行创建同样的效果 使用的选项 ——变量 或 ——variablefile 。 因为这 关键字可以改变变量无处不在,应该小心使用它。

看到 设置组变量 的更多信息和示例。

set_library_search_order * search_order )

设置分辨率匹配多个关键词时要使用一个名称。

图书馆搜索命令用于解决冲突时一个关键字 名字在测试数据匹配多个关键词。 第一个图书馆 (或资源,见下文)包含关键字的选择 关键字实现使用。 如果没有找到关键字从任何库 (或资源),测试执行搜索时失败一样 订单没有设置。

当使用这个关键字时,不需要使用很长时间 LibraryName.Keyword 的名字 符号。 例如,而不是 有

你可以有

还可以使用此关键字设置关键词的顺序不同 资源文件。 在这种情况下,资源名称必须没有路径 或扩展:

注意: ——搜索顺序是有效的只有在使用这个关键字的套件。 ——关键词资源总是有更高的优先级

关键词在图书馆搜索顺序无关。
  • 返回旧秩序,可以用来重置搜索顺序。
  • 图书馆和资源名搜索顺序都和空间 不敏感。
set_log_level(level)

将日志阈值设置为指定的级别,并返回旧的级别。

消息水平以下不会记录。 默认的日志级别 信息,但它可以覆盖命令行选项 ——loglevel 

可用的级别:跟踪、调试信息(默认)、警告、错误和没有(没有 日志记录)。

set_suite_documentation(docappend=Falsetop=False)

设置文档为当前的测试套件。

默认情况下,可能现有的文档覆盖,但是 这个可以改变使用可选的 附加 参数类似的 与 设置测试消息 关键字。

这个关键字设置默认文档当前的套件。 如果可选 前 (见参数给出一个真正的价值 布尔 参数的文档),顶级套房是改变 代替。

当前套件的文档作为一个内置的是可用的 变量 $ {套件 文档} 

2.7新机器人框架。 支持 附加 和 前 是 在2.7.7补充道。

set_suite_metadata(namevalueappend=Falsetop=False)

集元数据为当前的测试套件。

在默认情况下可能的值覆盖现有的元数据,但是 这个可以改变使用可选的 附加 参数类似的 与 设置测试消息 关键字。

这个关键字设置默认当前套件的元数据。 如果可选 前 (见参数给出一个真正的价值 布尔 参数 的元数据),顶级套房是改变。

当前套件的元数据可以作为内置的变量 $ {套件 元数据} 在Python字典。 注意,修改这个 变量直接对实际的元数据套件没有影响。

新的第2.7.4机器人框架中。 支持 附加 和 前 是 在2.7.7补充道。

set_suite_variable(name*values)

到处都提供一个变量的范围内当前的套件。

变量设置该关键字内到处都是可用的 当前执行的测试套件的范围。 设置变量与这个 关键字因此有同样的效果,使用变量创建它们 表测试数据文件中或从变量文件导入它们。

可能孩子测试套件看不到变量设置关键字 默认情况下。 从机器人Framework 2.9开始,可以控制 通过使用 孩子= <选项> 作为最后一个参数。 如果指定的 <选项> 一个非空字符串或任何其他值被认为是真的吗 在Python中,变量设置也对孩子套件。 父母和 兄弟姐妹套件永远不会看到这个字变量集。

变量的名称可以被作为一个正常的变量名 (如。 $ {名称} )或逃跑的格式  $ {名称} 美元的名字 。 变量值可以使用相同的语法当变量 在变量创建表。

如果一个变量已经存在在新的范围,它的价值 覆盖。 否则就会创建一个新的变量。 如果一个变量已经 在当前的范围内存在,可左空和价值 变量的新范围内得到当前范围内的值。

与空值覆盖现有的值,使用内置的 变量 $ {空} @ {空} 或 & {空} :

注意: 如果变量值,本身就是一个变量(逃脱了 ),你必须总是使用逃脱格式设置变量:

这种限制也适用于 设置测试变量 集全球 变量 变量应该存在 变量不存在 和 获取变量值 关键词。

set_tags(*tags)

增加了给 标签 当前测试或所有测试套件。

当使用该关键字在一个测试用例,测试 指定的标签和其他测试不受影响。

如果使用该关键字在一套的设置中,所有的测试用例 套件,递归,得到给定的标记。 这是一个失败 在一套拆卸使用此关键字。

当前标签作为一个内置的变量 @ {测试 标签} 

看到 删除标签 如果你想删除某些标签 失败 如果 你想失败后的测试用例设置和/或删除标签。

set_test_documentation 医生 附加= False )

当前测试用例的文档集。

默认情况下,可能现有的文档覆盖,但是 这个可以改变使用可选的 附加 参数类似的 与 设置测试消息 关键字。

目前的测试文档提供一个内置的变量 $ {测试 文档} 。 这个关键字不能用于套件 设置或套件拆卸。

2.7新机器人框架。 支持 附加 在2.7.7补充道。

set_test_documentation(docappend=False)

设置当前测试用例的信息。

如果可选 附加 (见参数给出一个真正的价值 布尔 参数 ),给 消息 添加后可能的早 消息通过加入空间信息。

在测试拆卸这个关键字可以改变可能的失败消息, 否则失败覆盖这个关键字设定的消息。 请注意 在拆卸消息可以作为一个内置的变量 $ {测试 信息} 

可以使用HTML格式的消息从消息 与 * HTML * 

这个关键字不能用于套件设置或套件拆卸。

支持 附加 添加机器人框架2.7.7和支持吗 2.8的HTML格式。

set_test_message(messageappend=False)

到处都提供一个变量的范围内当前的测试。

变量设置该关键字内到处都是可用的 当前测试用例执行的范围。 例如,如果您设置一个 变量在用户关键字,它在测试用例级别都是可用的 和所有其他用户关键字用于当前的测试。 其他 测试用例不会看到变量设置关键字。

看到 设置组变量 的更多信息和示例。

set_variable(*values)

返回给定的值,然后可以分配给一个变量。

这个关键字主要用于设置标量变量。 另外它可用于转换一个标量变量 包含一个列表列表变量或多个标量变量。 推荐使用 创建列表 当创建新列表。

变量与该关键字只能创建 他们创建范围。 看到 设置全局变量 设置测试变量 和 设置组变量怎样的信息 设置变量,这样他们可以在更大的范围。

set_variable_if 条件 *值 )

设置变量根据给定的条件。

基本的使用条件和两个值。 的 给定的条件是第一次评价的一样 应该是真的 关键字。 如果条件为真,那么 第一个返回值,否则第二个值 返回。 第二个值也可以省略,在这种情况下 它有一个默认值。 这种用法说明 在下面的例子, $ { rc } 被认为是零。

还可以有其他的如果的支持通过替换 第二个值与另一个条件,有两个新的价值观 在它。 如果第一个条件是不正确的,第二个是 评估的值后,基于返回 其真值。 这可以继续通过添加更多 没有限制条件。

使用 获取变量值 如果你需要设置变量 根据是否存在一个变量动态。

set_variable_if(condition*values)

验证给定的项目是空的。

项目的长度是有使用 得到长度 关键字。 的 默认错误消息可以被覆盖 味精 论点。

should_be_equal(firstsecondmsg=Nonevalues=True)

失败如果给定的对象是不平等的。

可选 味精 和 值 参数指定如何构造 如果这个关键字失败错误消息:

  • 如果 味精 不是,错误消息吗 <第一次> ! = <二> 
  • 如果 味精 给出 值 得到一个真正的价值,错误 信息是 <味精>: <第一次> ! = <二> 
  • 如果 味精 给出 值 得到一个错误的值,误差 消息是 <味精> 

值 默认情况下是正确的,但可以通过使用转向错误, 例如,字符串 假 或 没有 值 。 看到 布尔参数 部分为更多的细节。

如果两个参数是多行字符串,使用进行了比较 多行字符串比较 

should_be_equal_as_integers(firstsecondmsg=Nonevalues=Truebase=None)

失败后如果对象是不平等将他们转换为整数。

看到 转换为整数 如何转换为整数的信息 使用其他基地10 基地 参数或 0 0 b / o / x 前缀。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_be_equal_as_numbers(firstsecondmsg=Nonevalues=Trueprecision=6)

失败后如果对象是不平等将他们转化为实数。

转换完成 转换为数字 关键字使用 鉴于 精度 

作为讨论的文档 转换为数字 ,机器 一般不能存储浮点数准确。 因为 这个限制,平等是有问题的,比较浮 一个正确的方法使用取决于上下文。 这个关键字的使用 一个很天真的舍入数字之前的方法进行比较, 这是容易舍入误差和不工作很好吗 数量非常大或小。 关于比较的更多信息 浮动,具体如何实现自己的上下文 比较算法,看到http://randomascii.wordpress.com/2012/02/25/comparing -浮-点-数字- 2012 edition/ 

看到 不应该平等的数字吗 负面的版本 关键字, 应该是平等的 解释如何覆盖 默认的错误消息味精 和 值 

should_be_equal_as_strings(firstsecondmsg=Nonevalues=True)

失败后如果对象是不平等将他们转换为字符串。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

如果两个参数是多行字符串,使用进行了比较 多行字符串比较 

should_be_true(conditionmsg=None)

失败如果给定的条件是不正确的。

如果 条件 是一个字符串(例如 $ { rc } 10 ),这是评估 Python表达式中解释 评估表达式和 关键字状态是基于结果的决定。 如果non-string项 ,直接从其状态了

默认错误消息( <条件> 应该 是 真正的 )不是很 信息,但它可以覆盖 味精 论点。

变量使用像 变量$ { } 在上面的示例中, 在评价之前的表达式所取代。 变量也 在评价名称空间,可以使用特殊的访问 语法 $变量 。 这是机器人Framework 2.9中的一个新特性 解释更彻底 评估表达式 

从机器人Framework 2.8开始, 应该是真的 自动 Python的进口(http://docs.python.org/2/library/os 。 html | os)和 ( http://docs.python.org/2/library/sys 。 包含html | sys)模块 几个有用的属性:

should_contain(containeritemmsg=Nonevalues=True)

没有如果 容器 不包含 项 一次或多次。

使用字符串、列表和任何支持Python的 在 操作符。 看到 应该是平等的 解释如何覆盖 默认的错误消息 味精 和 值 

should_contain_x_times(item1item2countmsg=None)

没有如果 item1 不包含 第二条 数 次了。

使用字符串、列表和所有对象 得到数 作品 与。 可以覆盖默认的错误消息 味精 和 实际的数总是记录。

should_end_with(str1str2msg=Nonevalues=True)

失败如果字符串 str1 不以字符串结束 str2 

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_match(stringpatternmsg=Nonevalues=True)

失败除非给定的 字符串 匹配给定的 模式 

模式匹配相似匹配的文件在一个壳,它是 总是区分大小写的。 的模式, 匹配任何和 吗? 匹配任何单个的字符。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_match_regexp(stringpatternmsg=Nonevalues=True)

没有如果 字符串 不匹配 模式 作为一个正则表达式。

正则表达式检查是使用Python实现的 ( http://docs.python.org/2/library/re 。 html | re模块)。 Python的常规 表达式语法来自Perl,因此也很 类似于使用的语法,例如,在Java、Ruby和。net。

注意事项关于机器人regexp语法的框架测试数据:

1)反斜杠是一个转义字符的测试数据,和可能的 反斜杠在模式因此必须与另一个反斜杠转义 (如。  w + )。

2)可能包含特殊字符的字符串,但应该处理 字符串,可以逃的 Regexp逃脱 关键字。

3)给定的模式不需要匹配整个字符串。 为 的例子中,模式 嗨 匹配的字符串 你好 世界! 。 如果 一个完整的匹配是必要的, 和 美元 字符可以使用 分别表示字符串的开始和结束。 例如, ^嗨美元 只有匹配的字符串 嗨 

4)可能标志改变如何解析表达式(例如。 re.IGNORECASE re.MULTILINE )可以通过加前缀 模式与 (? iLmsux) 组织像 (? im)模式 。 的 可用的旗帜 我 (不区分大小写), 米 (多行模式),年代 (dotall模式), (详细) (Unicode) (地区)的依赖。

如果这个关键字,它返回字符串的一部分 匹配模式。 此外,可能的捕获组 返回。

看到 应该是平等的 关键字解释如何覆盖 的默认错误消息 味精 和 值 参数。

should_not_be_empty(itemmsg=None)

验证给定的项目不是空的。

项目的长度是有使用 得到长度 关键字。 的 默认错误消息可以被覆盖 味精 论点。

should_not_be_equal(firstsecondmsg=Nonevalues=True)

失败如果给定的对象是相等的。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_not_be_equal_as_integers(firstsecondmsg=Nonevalues=Truebase=None)

失败如果对象相等后将它们转换为整数。

看到 转换为整数 如何转换为整数的信息 使用其他基地10 基地 参数或 0 0 b / o / x 前缀。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

看到 应该等于整数吗 对于一些用法示例。

should_not_be_equal_as_numbers(firstsecondmsg=Nonevalues=Trueprecision=6)

失败如果对象相等后将它们转化为实数。

转换完成 转换为数字 关键字使用 鉴于 精度 

看到 应该平等的数字 如何使用的例子 精度 为什么它并不总是像预期的那样工作。 另请参阅 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_not_be_equal_as_strings(firstsecondmsg=Nonevalues=True)

失败如果对象相等后将它们转换为字符串。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_not_be_true(conditionmsg=None)

如果给定的条件为真失败。

看到 应该是真的 有关详细信息,如何 条件 评估 以及如何 味精 可以用来覆盖默认的错误消息。

should_not_contain(containeritemmsg=Nonevalues=True)

没有如果 容器 包含 项 一次或多次。

使用字符串、列表和任何支持Python的 在 操作符。 看到 应该是平等的 解释如何覆盖 默认的错误消息 味精 和 值 

should_not_end_with(str1str2msg=Nonevalues=True)

失败如果字符串 str1 结尾的字符串 str2 

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_not_match(stringpatternmsg=Nonevalues=True)

如果给定的失败 字符串 匹配给定的 模式 

模式匹配相似匹配的文件在一个壳,它是 总是区分大小写的。 在模式 匹配任何和 吗? 匹配任何单个的字符。

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_not_match_regexp(stringpatternmsg=Nonevalues=True)

没有如果 字符串 匹配 模式 作为一个正则表达式。

看到 应该匹配正则表达式 关于参数的更多信息。

should_not_start_with(str1str2msg=Nonevalues=True)

失败如果字符串 str1 从字符串开始 str2 

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

should_start_with(str1str2msg=Nonevalues=True)

失败如果字符串 str1 不从字符串开始 str2 

看到 应该是平等的 解释如何覆盖默认的 错误消息与 味精 和 值 

睡眠 sleep(time_reason=None)

停顿的测试执行。

时间 可以是数字或字符串。 时间字符串 这样的格式 一天 小时 分钟 秒 5毫秒 1 d 2 h 3米 4 s 5女士 ,他们是完全的附录解释道 机器人框架用户指南。 可选 原因 可以用来解释为什么 睡眠是必要的。 睡的时间和原因都记录下来。

variable_should_exist(namemsg=None)

失败除非给定的变量在当前的范围内存在。

变量的名称可以被作为一个正常的变量名 (如。 $ {名称} (如)或逃跑的格式。 $ {名称} )。 请注意 前有一些局限性解释道 设置组变量 

可以覆盖默认的错误消息 味精 论点。

另请参阅 变量不存在 和 关键字应该存在 

variable_should_not_exist(namemsg=None)

失败如果给定的变量在当前的范围内存在。

变量的名称可以被作为一个正常的变量名 (如。 $ {名称} (如)或逃跑的格式。 $ {名称} )。 请注意 前有一些局限性解释道 设置组变量 

可以覆盖默认的错误消息 味精 论点。

另请参阅 变量应该存在 和 关键字应该存在 

wait_until_keyword_succeeds(retryretry_intervalname*args)

如果不能运行指定的关键字,并重试。

的名字 和 arg游戏 定义执行同样的关键字 与 运行关键字 。 多长时间重试运行关键字 定义使用 重试 论点,超时或计数。 retry_interval 是时候尝试运行前等待 关键字后再上一次运行失败了。

如果 重试 作为超时,它必须在机器人框架的 时间格式(如。 一分钟 最小值 年代 ,4.5 ) 解释在一个附录机器人框架的用户指南。 如果它是 作为计数,它必须有 次 或 后缀(如。 次 10 )。 retry_interval 必须始终在吗 机器人框架的时间格式。

如果关键字不成功不管重试,这个关键字 失败。 如果执行关键字传递,其返回值返回。

所有正常的失败都被这个关键字。 错误造成的 无效的语法,测试或关键字超时,或致命的异常(引起 例如,由 致命错误 不抓住。

多次运行相同的关键字在这个关键字可以创建 大量的输出和大大增加生成的大小 输出文件。 从机器人Framework 2.7,它是可能的 删除不必要的输出使用的关键字——RemoveKeywords WUKS 命令行选项。

支持指定 重试 作为一个重试的次数 2.9机器人框架中的一个新特性。 因为机器人框架2.9,变量被这个关键字错误。

异常 robot.libraries.BuiltIn。 RobotNotRunningError 

案例: exceptions.AttributeError

时使用的东西不能做,因为机器人没有运行。

基于AttributeError射频< 2.8.5向后兼容。 可能以后是直接基于例外,所以新代码应该除了吗 明确这个异常。

arg游戏
消息
robot.libraries.BuiltIn。 register_run_keyword 图书馆 关键字 args_to_process =没有 ,deprecation_warning = True (来源)

注册“运行关键字”,使其可以正确处理参数。

注意: 这个API将改变在robotframework3.1。  使用 deprecation_warning = False 为了避免相关弃用警告。

  1. 为什么需要这个方法

关键词内部运行其他关键字(通常使用 运行关键字 或者一些变异的内装式)必须有参数的意思 内部执行关键字特别处理,以防止处理它们 两次。 这样做只是为了关键词注册使用这种方法。

如果注册关键字名称相同的任何关键字的机器人框架 可以使用标准库,它没有得到警告。 正常情况下 在这种情况下,除非有一个警告中使用关键字长 格式(例如MyLib.Keyword)。

关键字执行注册关键词可以进行管制模式下运行 如果他们有“名”论点的执行关键字的名字。

  1. 如何使用这个方法吗

图书馆 是图书馆的名字注册关键字在哪里吗 实现的。

关键字 可以是一个函数或方法实现 关键字,或者实现关键字作为字符串的名称。

args_to_process 需要的时候 关键字 是给出一个字符串,它吗 定义了多少注册关键字必须的参数 正常处理。 当 关键字 这是一个方法或函数, 信息是直接从它得到可变参数(指定 语法的 args”)不但是别人处理。

  1. 例子

from robot.libraries.BuiltIn import BuiltIn, register_run_keyword

def my_run_keyword(name, *args):
# do something return BuiltIn().run_keyword(name, *args)

# Either one of these works register_run_keyword(__name__, my_run_keyword) register_run_keyword(__name__, ‘My Run Keyword’, 1)

from robot.libraries.BuiltIn import BuiltIn, register_run_keyword

class MyLibrary:
def my_run_keyword_if(self, expression, name, *args):
# do something return BuiltIn().run_keyword_if(expression, name, *args)

# Either one of these works register_run_keyword(‘MyLibrary’, MyLibrary.my_run_keyword_if) register_run_keyword(‘MyLibrary’, ‘my_run_keyword_if’, 2)

原文地址:https://www.cnblogs.com/kuihua/p/5452614.html