Robot Framework 内置变量

转自:https://blog.csdn.net/qq_26886929/article/details/53907755ide

Robot Framework 内部提供了一下直接可用的内置变量测试

 

1. 操做系统相关变量

 

内置的操做系统相关的变量,减小了测试数据对操做系统之间的差别性的关注ui

RF 中可用的操做系统相关的内置变量以下表:spa

 

变量 用途
${CURDIR} 测试数据文件所在目录的绝对路径,该参数是大小写敏感的
${TEMPDIR} 操做系统临时目录的绝对路径,在类 Unix 系统中,该路径一般是 /tmp;在 Windows 系统中,一般是 c:\Documents and Settings\<user>\Local Settings\Temp
${EXECDIR} 到测试开始执行的目录的绝对路径
${/} 操做系统文件路径分隔符,在类 Unix 系统中为: ‘/’, 在 Windows 中则为: ‘\’
${:} 操做系统路径元素分隔符,在类 Unix 系统中为: ‘:’,在 Windows 中则为: ‘;’
${\n} 操做系统行分隔符,在类 Unix 系统中为: ‘\n’,在 Windows 中则为: ‘\r\n’

 

 

  1.  
    *** Test Cases ***
  2.  
    Example
  3.  
    Create Binary File ${CURDIR}${/}input.data Some text here${\n}on two lines
  4.  
    Set Environment Variable CLASSPATH ${TEMPDIR}${:}${CURDIR}${/}foo.jar

 

 

2. 数字变量

 

以下面例子中所示,变量语法能用来建立 整型 和 浮点型 数据。当一个关键字须要 真实的数字而非对应的数字字符串做为参数时,这种建立数字变量的方法是颇有用的。操作系统

 

  1.  
    *** Test Cases ***
  2.  
    Example 1A
  3.  
    Connect example.com 80 # Connect 得到两个字符串做为参数
  4.  
    Example 1B
  5.  
    Connect example.com ${ 80} # Connect 得到一个字符串和一个整数做为参数
  6.  
    Example 2
  7.  
    Do X ${ 3.14} ${‐1e‐4} # Do X 得到浮点数 3.14 和 ‐0.0001 做为参数

 

从二进制,八进制和十六进制值来建立整数也是能够的,建立时分别用: 0b, 0o 和 0x 做为相应的前缀,而且这种语法是大小写不敏感的。
  1.  
    *** Test Cases ***
  2.  
    Example
  3.  
    Should Be Equal ${ 0b1011} ${11}
  4.  
    Should Be Equal ${ 0o10} ${8}
  5.  
    Should Be Equal ${ 0xff} ${255}
  6.  
    Should Be Equal ${ 0B1010} ${0XA}

3. 布尔值和 None/ null变量

 

布尔值和 Python 的 None,Java 的 null 变量也能够用建立数字变量相似的语法建立:.net

 

  1.  
    *** Test Cases ***
  2.  
    Boolean
  3.  
    Set Status ${true} # Set Status 得到布尔值 true 做为参数
  4.  
    Create Y something ${false} # Create Y 得到字符串和布尔值 false 做为参数
  5.  
     
  6.  
    None
  7.  
    Do XYZ ${ None} # Do XYZ 得到 Python None 做为参数
  8.  
     
  9.  
    Null
  10.  
    ${ret} = Get Value arg # Checking that Get Value returns Java null
  11.  
    Should Be Equal ${ret} ${null}

这些变量也是大小写不敏感的,因此 ${True} 和 ${true} 是同样的。此外 ${None} 和 ${null} 是同义词,由于用 Jython 解释器执行用例时, Jython 会自动将 None 和 null 转换成正确格式。debug

 

4.空格和空(empty)变量

 

能够分别使用 ${SPACE} 和 ${EMPTY} 来建立空格和空字符串变量。这些变量颇有用,若是不使用这些变量的话,就须要对空格或空单元格进行转义。若是须要一个以上的空格,也可使用扩展变量语法来轻易得到,形如: ${SPACE * 5}。下面的例子中,Should Be Equal 关键字获得的参数值是相等的,但很明显使用变量的方式比使用 ‘\' 转义的方式更易理解。
  1.  
    *** Test Cases ***
  2.  
    One Space
  3.  
    Should Be Equal ${SPACE} \ \
  4.  
     
  5.  
    Four Spaces
  6.  
    Should Be Equal ${SPACE * 4} \ \ \ \ \
  7.  
     
  8.  
    Ten Spaces
  9.  
    Should Be Equal ${SPACE * 10} \ \ \ \ \ \ \ \ \ \ \
  10.  
     
  11.  
    Quoted Space
  12.  
    Should Be Equal "${SPACE}" " "
  13.  
     
  14.  
    Quoted Spaces
  15.  
    Should Be Equal "${SPACE * 2}" " \ "
  16.  
     
  17.  
    Empty
  18.  
    Should Be Equal ${EMPTY} \


 还有两个变量 @{EMPTY} 和 &{EMPTY},他们分别表示 ‘空列表’ 和 ‘空字典’ 变量。 这两个变量也是有用的,例如在写测试模板的时候,模板关键字不带参数使用时。
  1.  
    *** Test Cases ***
  2.  
    Template
  3.  
    [Template] Some keyword
  4.  
    @{EMPTY}
  5.  
     
  6.  
    Override
  7.  
    Set Global Variable @{LIST} @{EMPTY}
  8.  
    Set Suite Variable &{DICT} &{EMPTY}


5. 自动变量


还有一些自动变量能够在测试数据中使用。这些变量在测试过程当中可能有不一样的取值,其中有一些甚至不是一直可用的。
变量 解释 使用地点
${TEST NAME} 当前测试用例的名称 测试用例中
@{TEST TAGS} 当前测试用例被打上的全部标记,按字母顺序排列。可使用 Set Tags 和 Remove Tags 关键字动态的修改 测试用例中
${TEST DOCUMENTATION} 当前测试用例的说明文档,可使用 Set Test Documentation 关键字动态的修改 测试用例中
${TEST STATUS} 当前测试用例的执行状态,PASS 或 FAIL 测试用例 teardown时
${TEST MESSAGE} 当前测试用例的信息 测试用例 teardown时
${PREV TEST NAME} 前一个测试用例的名字,若是尚未测试用例被执行,则该值为空 全部地方
${PREV TEST STATUS} 前一个测试用例的执行状态,PASS/FAIL,若是尚未测试用例被执行,则该值为空 全部地方
${PREV TEST MESSAGE} 前一个测试用例执行所产生的可能的错误信息 全部地方
${SUITE NAME} 当前测试套件的全称 全部地方
${SUITE SOURCE} 当前测试套件文件或目录的绝对路径 全部地方
${SUITE DOCUMENTATION} 当前测试套件的说明文档,可使用 Set Suite Documentation 关键字动态的改变 全部地方
&{SUITE METADATA} 当前测试套件的元数据 全部地方
${SUITE STATUS} 当前测试套件的执行状态, PASS 或 FAIL 测试套件 teardown
${SUITE MESSAGE} 当前测试套件的所有信息,包括统计 测试套件 teardown
${KEYWORD STATUS} 当前关键的执行状态,PASS 或 FAIL 用户关键字 teardown
${KEYWORD MESSAGE} 当前关键字执行时可能产生的错误信息 用户关键字 teardown
${LOG LEVEL} 当前日志级别 全部地方
${OUTPUT FILE} 到输出文件的绝对路径 全部地方
${LOG FILE} 到日志文件的绝对路径,或者为NONE 当没有建立日志文件时 全部地方
${REPORT FILE} 到测试报告文件的绝对路径,或者为NONE 当没有建立测试报告文件时 全部地方
${DEBUG FILE} 到debug文件的绝对路径,或者为NONE 当没有建立debug文件时 全部地方
${OUTPUT DIR} 到输出目录的绝对路径 全部地方
相关文章
相关标签/搜索