python 自动化测试平台 Robot Framework 内置库 翻译
1.1 概述
#2012-02-16 磁针石
#承接软件自动化实施与培训 验证码破解 软件破解 脚本开发 测试和python培训等
#gtalk: ouyangchongwu#gmail.com qq 37391319 博客:testing.blog.chinaunix.net
#版权所有,转载刊登请来函联系
#自动化测试和python群组: http://groups.google.com/group/automation_testing_python
#python qq group: 深圳自动化测试python群:113938272
#武冈深圳qq群:66250781 都梁深圳湖南户外群:49494279
#参考资料:
Normal 0 7.8 pt 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0 7px 0 7px; mso-para-margin:0; mso-para-margin-bottom:0; mso-pagination:widow-orphan; font-size:14px; mso-bidi-font-size:15px; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; mso-font-kerning:1px;} BuiltIn
版本:2.6.3
范围:global
命名参数:支持
介绍
BuiltIn是Robot Framework标准库,提供了常用关键字。它自动导入,从而始终可用。 提供的关键字有用于验证的(e.g. Should Be Equal, Should Contain),转换的(e.g. Convert To Integer),其他(e.g. Log, Sleep, Run Keyword If, Set Global Variable)。
所有关键字如下:
Call Method · Catenate · Comment · Convert To Binary · Convert To Boolean · Convert To Hex · Convert To Integer · Convert To Number · Convert To Octal · Convert To String · Create List · Evaluate · Exit For Loop · Fail · Fatal Error · Get Count · Get Length · Get Library Instance · Get Time · Get Variable Value · Get Variables · Import Library · Import Resource · Import Variables · Keyword Should Exist · Length Should Be · Log · Log Many · Log Variables · No Operation · Regexp Escape · Remove Tags · Repeat Keyword · Replace Variables · Run Keyword · Run Keyword And Continue On Failure · Run Keyword And Expect Error · Run Keyword And Ignore Error · Run Keyword If · Run Keyword If All Critical Tests Passed · Run Keyword If All Tests Passed · Run Keyword If Any Critical Tests Failed · Run Keyword If Any Tests Failed · Run Keyword If Test Failed · Run Keyword If Test Passed · Run Keyword If Timeout Occurred · Run Keyword Unless · Run Keywords · Set Global Variable · Set Library Search Order · Set Log Level · Set Suite Variable · Set Tags · Set Test Message · Set Test Variable · Set Variable · Set Variable If · Should Be Empty · Should Be Equal · Should Be Equal As Integers · Should Be Equal As Numbers · Should Be Equal As Strings · Should Be True · Should Contain · Should Contain X Times · Should End With · Should Match · Should Match Regexp · Should Not Be Empty · Should Not Be Equal · Should Not Be Equal As Integers · Should Not Be Equal As Numbers · Should Not Be Equal As Strings · Should Not Be True · Should Not Contain · Should Not End With · Should Not Match · Should Not Match Regexp · Should Not Start With · Should Start With · Sleep · Variable Should Exist · Variable Should Not Exist · Wait Until Keyword Succeeds
关键字介绍
关键字 |
参数 |
文档 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Call Method |
object, method_name, *args |
使用参数args调用对象object的方法method_name。 方法可能返回值可以赋值给一个变量。 当找不到方法或者方法产生异常时,Keyword会失败。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Catenate |
Catenate |
连接给定参数,返回字符串。 默认用空格连接参数项目,如果第一个参数为'SEPARATOR=<sep>',则使用”sep”来连接.
例子:
实际结果: => - ${str1} = 'Hello world' - ${str2} = 'Hello---world' - ${str3} = 'Helloworld' |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment |
*messages |
在日志文件中以关键字参数形式显示指定信息。 Comment对参数不进行任何处理,仅仅是显示在日志中,用于显示简单信息。 如果要显示变量值,可以使用Log 或 Log Many关键字。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To Binary |
item, base=None, prefix=None, length=None |
转换参数为二进制字符串。 如果添加了base参数,则先内部使用Convert To Integer转换为整数,然后再转换为二进制数字,以字符串的形式显示,比如”1011“。 返回值可以包含可选的前缀和最小长度(不包含前缀和负号等)。如果返回值比要求的长度短,则使用0填充。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To Boolean |
item |
转换参数为布尔值true或false。 如果参数是字符串'True'(不区分大小写)就返回真,为'False'就返回假;其他情况调用Python的'bool'的方法来判断。请参阅http://docs.python.org/lib/truth.html 。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To Hex |
item, base=None, prefix=None, length=None, lowercase=False |
转换参数为十六进制字符串。 如果添加了base参数,则先内部使用Convert To Integer转换为整数,然后再转换为十六进制数字,以字符串的形式显示,比如'FF0A'。 返回值可以包含可选的前缀和最小长度(不包含前缀和负号等)。如果返回值比要求的长度短,则使用0填充。 默认返回大写字符串,lowercase参数会转换值为小写(不包含前缀)。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To Integer |
item, base=None |
转换参数为整数。 如果参数是字符串,则默认转为十进制整数。使用其他进制可以用base指定或者添加前缀,比如0b表示2进制,0o表示8进制,0x表示16进制。前缀只有当无base参数才可以添加,前缀的前面还可以添加加减等符号。 语法不区分大小写并忽略空格
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To Number |
item, precision=None |
转换参数为浮点数。 如果可选参数precision是正数或零,返回的四舍五入的值。负数则相当于修改-precision位数为0 如果可选参数precision是负数,返回的四舍五入的值。
例子:
注意机器一般不能准确地存储浮点数。参见http://docs.python.org/tutorial/floatingpoint.html。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To Octal |
item, base=None, prefix=None, length=None |
转换参数为八进制字符串。 如果添加了base参数,则先内部使用Convert To Integer转换为整数,然后再转换为八进制数字,以字符串的形式显示,比如'775''。 返回值可以包含可选的前缀和最小长度(不包含前缀和负号等)。如果返回值比要求的长度短,则使用0填充。 默认返回大写字符串,lowercase参数会转换值为小写(不包含前缀)。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Convert To String |
item |
转换参数为Unicode字符串。 针对Python对象使用“__unicode__'或'__str__’方法。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Create List |
*items *项目 |
根据指定参数创建列表。 返回的列表都用来给$ {标量}和@{列表}变量赋值。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Evaluate |
expression, modules=None |
用Python计算表达式并返回结果。 modules参数可用于导入一些逗号分隔模块列表到表达式计算的名字空间。
的进口和计算表达式的命名空间添加到Python模块列表。 modules argument can be used to specify a comma separated list of Python modules to be imported and added to the namespace of the evaluated expression .评估在Python表达式,并返回结果。 模块参数可用于指定一个逗号分隔的进口和计算表达式的命名空间添加到Python模块列表。
例子: (假定 ${result} 为 3.14): :
=> - ${status} = True - ${down} = 3 - ${up} = 4.0 - ${random} = <random integer>
注意:如果表达式很复杂,建议在测试库中实现逻辑。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Exit For Loop |
立即停止执行for循环。 例子:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fail |
msg=None |
停止执行当前测试用例, |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fatal Error |
msg=None |
停止执行整个测试。 后续用例不会执行,可能的teardown也不会执行。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Get Count |
item1, item2 |
返回并在日志中记录item2在Item1中出现的次数。 此关键字适用于Python字符串和列表和所有具有'count'方法和以及可转换为Python列表的对象。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Get Length |
item |
返回并在日志中记录item的长度。 item可以是任何有一个长度的对象,例如,字符串,列表,或映射。 关键字首先试图用Python函数len函数(内部调用item的__len__方法)得到的长度。如果失败,关键字尝试直接调用item's的可能的length和size的方法。最后试图获得该项目的length属性值。如果所有这些尝试不成功的,关键字Fail。 可以使用列表,但是要作为标量来使用,比如(e.g. ${LIST})。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Get Library Instance |
name |
返回指定测试库的当前活动实例。 该关键字可以是测试库和其他有状态的测试库进行交互。比如: from robot.libraries.BuiltIn import BuiltIn
def title_should_start_with(expected): seleniumlib = BuiltIn().get_library_instance('SeleniumLibrary') title = seleniumlib.get_title() if not title.startswith(expected): raise AssertionError("Title '%s' did not start with '%s'" % (title, expected))
它也可以使用这个关键字,在测试数据,并返回库实例传递 到另一个关键字。 If a library is imported with a custom name, the name used to get the instance must be that name and not the original library name.如果一个库导入一个自定义名称, 名称中使用的实例必须是这个名字,而不是原来的库名称。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Get Time |
format=timestamp, time=NOW |
根据指定格式获取时间。 不区分大小写。
默认返回当前时间。
例子:假定当前时间是2006-03-29 15:06:21
=> - ${time} = '2006-03-29 15:06:21' - ${secs} = 1143637581 - ${year} = '2006' - ${yyyy} = '2006', ${mm} = '03', ${dd} = '29' - @{time} = ['2006', '03', '29', '15', '06', '21'] - ${y} = '2006' - ${s} = '21'
=> => - ${time} = '2007-04-27 09:14:27' - ${secs} = 27 - ${year} = '2006' - ${day} = '28' - @{time} = ['16', '08', '24'] |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Get Variable Value |
name, default=None |
返回变量值,如果变量不存在就返回default。 变量名可以是常规的变量名比如(eg ${NAME} )或者转义格式\${NAME}。注意,前者有一定的局限性, 见Set Suite Variable关键字中的解释。 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Get Variables |
返回包含在当前范围内的所有变量的字典。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Import Library |
name, *args |
在test suite导入库。 可以在测试执行时动态导入库。支持库名和绝对路径导入。使用'WITH NAME'还可以更改库名。 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Import Resource |
path |
在test suite导入资源文件。 path必须是绝对路径。斜线作为路径分隔符(包含Windows)。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Import Variables |
path, *args |
在test suite导入变量文件。 path必须是绝对路径。斜线作为路径分隔符(包含Windows)。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Keyword Should Exist |
name, msg=None |
Fail除非关键字在当前作用域存在。 有多个同名的关键字存在也会Fail。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Length Should Be |
item, length, msg=None |
验证item的长度。 通过关键字Get Length获取item的长度。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Log |
message, level=INFO |
在指定日志级别下记录message。 有效的日志级别有TRACE, DEBUG, INFO (default), HTML and WARN。HTML可以写不转义的HTML代码。例如<img src="image.png">在HTML日志级别将创建一个图像,但其他级别仅仅是显示字符串。注意,无效的HTML会破坏整个日志文件,一定要谨慎使用。HTML消息实际上是使用了INFO级别。 WARN级别记录的消息将在控制台和日志中测试执行的错误部分都可以看到。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Log Many |
*messages |
在INFO级别下记录messages为独立的条目。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Log Variables |
level=INFO |
在日志中记录当前所有变量。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
No Operation |
无操作,不做任何事情。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Regexp Escape |
*patterns |
对字符串中的非字母数字进行转义。 这个关键字可以用来转义关键字Should Match Regexp和Should Not Match Regexp使用的字符串。 转义使用python中的re.escape()函数。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Remove Tags |
*tags |
从当前测试用例或suite中删除标签 。 Tag可以使用模式,'*'匹配所有字符,“?”单个字符。 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Repeat Keyword |
times, name, *args |
执行指定的关键字times次。 Times为整数或可以转换为整数的字符串。为了提高可读性,还可以在'times'后添加后缀'times' or 'x'(不区分大小写,去掉多余空格)。 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replace Variables |
text |
替换text中的变量。 如果文本中没有包含变量,关键字Fail。 例子:假定文件“template.txt”的内容为“Hello $ {NAME}!”,变量的'${NAME}'的值为'Robot'。
如果text只有一个变量,返回值为原来的对象。否则返回字符串。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword |
name, *args |
根据参数args执行关键字name。 name可以动态设定,例如,来自另一个关键字的返回值或命令行。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword And Continue On Failure |
name, *args |
根据参数args执行关键字name,错误时依旧继续执行。
例如:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword And Expect Error |
expected_error, name, *args |
根据参数args执行关键字name,预期捕获到错误:expected_error。 预期的错误必须和Robot Framework报告中的相同。它可以是一个模式,'*'匹配所有字符,“?”匹配单个字符。捕获到预期错误,返回错误消息,否则关键字Fail。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword And Ignore Error |
name, *args |
根据参数args执行关键字,并忽略错误。 此关键字返回两个值,第一个是是“PASS”或'FAIL',第二个值是返回值或者或收到的错误消息。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If |
condition, name, *args |
如果condition为真,根据参数args执行关键字。 例子:a simple if/else construct:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If All Critical Tests Passed |
name, *args |
如果所有Critical测试用例通过,则根据参数args执行关键字。 只能用于suite teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If All Tests Passed |
name, *args |
如果所有测试用例通过,则根据参数args执行关键字。 只能用于suite teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If Any Critical Tests Failed |
name, *args |
如果有Critical测试用例Fail,则根据参数args执行关键字。 只能用于suite teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If Any Tests Failed |
name, *args |
如果有测试用例Fail,则根据参数args执行关键字。 只能用于suite teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If Test Failed |
name, *args |
如果测试用例Fail,则根据参数args执行关键字。 只能用于test teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If Test Passed |
name, *args |
如果测试用例Pass,则根据参数args执行关键字。 只能用于test teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword If Timeout Occurred |
name, *args |
如果测试用例超时,则根据参数args执行关键字。 只能用于test teardown。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keyword Unless |
condition, name, *args |
如果condition为假,根据参数args执行关键字。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run Keywords |
*names |
无参数地执行所有关键字。 主要用于setups 和 teardowns中,不想创建更高级别的关键字但是有很多很多动作要进行。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Global Variable |
name, *values |
设置全局变量。 和命令行使用'--variable' or '--variablefile'创建的效果一样。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Library Search Order |
*libraries |
设置库查找顺序。 使用关键字的时候可以不使用库名,比如Keyword 和MyLibrary.Keyword效果一样,清晰起见,还是建议带上库名。 注:文件中的关键字比库中的有更高的优先级。所有名字不区分大小写,会忽略多余的空格。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Log Level |
level |
设置log级别并返回就的log级别。 默认级别是INFO.可用的log级别有:TRACE, DEBUG, INFO (default), WARN and NONE (no logging),对应的信息由多到少。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Suite Variable |
name, *values |
设置suite变量。 效果和使用变量表或者从变量文件中导入一致。其他的suite,包含子suite将看不到这个变量。变量名可以是 常规的变量名比如(eg ${NAME} )或者转义格式\${NAME} 或$NAME。
例子:
注意如果变量的值中包含变量,必须使用转义的方式设置变量 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Tags |
*tags |
在测试用例或者suite中设置标签。 Teardown中不能使用该关键字。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Test Message |
message |
为当前测试用例设置消息。 message可能被错误消息覆盖,除非在测试用例teardown中使用。在测试用例teardown中,message甚至会覆盖错误消息。 本关键字不能在suite setup和 suite teardown中使用。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Test Variable |
name, *values |
设置当前测试用例变量。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Variable |
*values |
设置变量。 这个关键字主要用于设置标量变量。此外,它可用于转换包含列表的标量变量为列表变量或者多重标量变量,列表中的变量或多个标量变量。创建新列表时建议使用‘Create List'。 例子:
本关键字创建的变量仅仅在当前范围有效。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Set Variable If |
condition, *values |
基于condition设置变量。 基本的用法是一个condition和2个value。使用Should Be True来计算condition,如果condition为真,则返回第一个值,否则返回第二个值。第二个值也可以省略,会采用默认值None。
例子:假设${rc}是0
=> - ${var1} = 'zero' - ${var2} = 'value2' - ${var3} = None
多个Set Variable If关键字可以嵌套,效果类似于'Else If'。 例子
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Be Empty |
item, msg=None |
验证给定的项目为空。 Item的长度通过Get Length关键字获取。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Be Equal |
first, second, msg=None, values=True |
Fail除非对象相等。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Be Equal As Integers |
first, second, msg=None, values=True, base=None |
Fail除非转换为整数后相等。 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Be Equal As Numbers |
first, second, msg=None, values=True, precision=6 |
Fail除非转换为实数后相等。 采用Convert To Number关键字使用指定的精度进行转换。
例子:
参考:http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Be Equal As Strings |
first, second, msg=None, values=True |
Fail除非转换为字符串后相等。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Be True |
condition, msg=None |
Fail除非condition为true。 如果condition是一个字符串(如“$ {RC}<10')使用Python的内置函数'eval'来处理表达式。其他情况参考: http://docs.python.org/lib/truth.html
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Contain |
item1, item2, msg=None, values=True |
Fail除非item1中包含item2。 支持Python有in操作的字符串,列表等。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Contain X Times |
item1, item2, count, msg=None |
Fail除非item1中包含item2 count次。 支持字符串、列表等支持Get Count关键字的对象。 支持字符串、列表等支持Get Count关键字的对象。Msg会覆盖默认的错误消息。实际次数会记录在日志中。 列表和获取计数的所有对象的作品。默认的错误消息可以用味精覆盖和实际计数始终记录。 例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should End With |
str1, str2, msg=None, values=True |
Fail除非字符串str1以字符串str2结尾。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Match |
string, pattern, msg=None, values=True |
Fail除非string匹配模式pattern。 模式匹配是和shell中的文件匹配类似,它区分大小写,'*'匹配所有字符,“?”单个字符。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Match Regexp |
string, pattern, msg=None, values=True |
Fail如果string不匹配正则表达式pattern。 使用python的re模块进行正则表达式匹配,详细信息如下: * http://docs.python.org/lib/module-re.html * http://www.amk.ca/python/howto/regex/
Robot Framework中的regexp需要注意: 1)反斜杠在测试数据是转义字符,因此模式中要使用双重转义(如:'\\d\\w+')模式可能反斜杠转义。 2)字符串需要转义的特殊字符,可以使用regexp ESCAPE关键字。 3)pattern不会匹配整个字符串。例如,模式'ello'会匹配字符串'hello world!如果要完整匹配,'^'和'$'字符可以用来表示字符串的开头和结尾 4)影响表达式解析的标志(eg re.IGNORECASE, re.MULTILINE)可通过前缀'(?iLmsux)'的形式设置(eg '(?im)pattern')。可用的标志有'IGNORECASE': 'i', 'MULTILINE': 'm', 'DOTALL': 's', 'VERBOSE': 'x', 'UNICODE': 'u', and 'LOCALE': 'L'.。 如何表达分析可能改变标志(如re.IGNORECASE,re.MULTILINE)可以设置前缀模式“(?iLmsux)组(如”(IM)模式“)。 如果关键字成功,它返回字符串匹配的模式的一部分。另外还可以返回组。
例子:
=> - ${ret} = 'Foo: 42' - ${match} = 'Bar: 43' - ${group1} = 'Bar' - ${group2} = '43' |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Be Empty |
item, msg=None |
验证给定的项目非空。 使用Get Length来获取item的长度。Msg会覆盖默认的错误消息。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Be Equal |
first, second, msg=None, values=True |
Fail如果对象相等。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Be Equal As Integers |
first, second, msg=None, values=True, base=None |
Fail如果转换为整数后相等。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Be Equal As Numbers |
first, second, msg=None, values=True, precision=6 |
Fail如果转换为实数后相等。 采用Convert To Number关键字使用指定的精度进行转换。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Be Equal As Strings |
first, second, msg=None, values=True |
Fail如果转换为字符串后相等。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Be True |
condition, msg=None |
Fail如果condition为true。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Contain |
item1, item2, msg=None, values=True |
Fail如果item1中包含item2。 支持Python有in操作的字符串,列表等。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not End With |
str1, str2, msg=None, values=True |
Fail如果字符串str1以字符串str2结尾。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Match |
string, pattern, msg=None, values=True |
Fail如果string匹配模式pattern。 模式匹配是和shell中的文件匹配类似,它区分大小写,'*'匹配所有字符,“?”单个字符。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Match Regexp |
string, pattern, msg=None, values=True |
Fail如果string匹配正则表达式pattern。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Not Start With |
str1, str2, msg=None, values=True |
Fail如果字符串str1以字符串str2开头。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Should Start With |
str1, str2, msg=None, values=True |
Fail如果字符串str1不以字符串str2开头。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sleep |
time, reason=None |
暂停指定时间 时间可以是一个数字或时间字符串。时间字符串格式如'1 day 2 hours 3 minutes 4 seconds 5milliseconds' 或 '1d 2h 3m 4s 5ms'等。参数reason用来解析reason为什么要sleep,sleep的时间和原因都记录在日志中。
例子:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Variable Should Exist |
name, msg=None |
Fail如果给定的变量在当前范围内的不存在。 变量名可以是一个正常的变量名(如$ {NAME})或转义格式(例如:\ $ {NAME})。注意,前者有一定的局限性, 见Set Suite Variable关键字中的解释。 Msg会覆盖默认的错误消息。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Variable Should Not Exist |
name, msg=None |
Fail如果给定的变量在当前范围内的存在。 变量名可以是一个正常的变量名(如$ {NAME})或转义格式(例如:\ $ {NAME})。注意,前者有一定的局限性, 见Set Suite Variable关键字中的解释。 Msg会覆盖默认的错误消息。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
Wait Until Keyword Succeeds |
timeout, retry_interval, name, *args |
等到指定的关键字成功或超时。 name和 args指定了要执行的关键字,类似于Run关键字。如果关键字在超时之前就失败,关键字就Fail。retry_interval是重试间隔:表示上次执行失败要等多久才执行下次。 Timeout和retry_interval必须使用Robot Framework的时间格式(e.g. '1 minute', '2 min 3 s', '4.5'). 例子:
Starting from Robot Framework 2.5 errors caused by invalid syntax, timeouts, or fatal exceptions are not caught by this keyword.机器人框架2.5语法无效,超时,或致命异常引起的错误开始不抓住这个关键字。 |