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

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

1. 操作系统相关变量

内置的操作系统相关的变量,减少了测试数据对操作系统之间的差异性的关注

RF 中可用的操作系统相关的内置变量如下表:

变量

用途

${CURDIR}

测试数据文件所在目录的绝对路径,该参数是大小写敏感的

${TEMPDIR}

操作系统临时目录的绝对路径,在类 Unix 系统中,该路径通常是 /tmp;在 Windows 系统中,通常是 c:\Documents and Settings\\Local Settings\Temp

${EXECDIR}

到测试开始执行的目录的绝对路径

${/}

操作系统文件路径分隔符,在类 Unix 系统中为: ‘/’, 在 Windows 中则为: ‘\’

${:}

操作系统路径元素分隔符,在类 Unix 系统中为: ‘:’,在 Windows 中则为: ‘;’

${\n}

操作系统行分隔符,在类 Unix 系统中为: ‘\n’,在 Windows 中则为: ‘\r\n’

*** Test Cases ***

Example

Create Binary File ${CURDIR}${/}input.data Some text here${\n}on two lines

Set Environment Variable CLASSPATH ${TEMPDIR}${:}${CURDIR}${/}foo.jar

2. 数字变量

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

*** Test Cases ***

Example 1A

Connect example.com 80 # Connect 获得两个字符串作为参数

Example 1B

Connect example.com ${80} # Connect 获得一个字符串和一个整数作为参数

Example 2

Do X ${3.14} ${‐1e‐4} # Do X 获得浮点数 3.14 和 ‐0.0001 作为参数

从二进制,八进制和十六进制值来创建整数也是可以的,创建时分别用: 0b, 0o 和 0x 作为相应的前缀,并且这种语法是大小写不敏感的。

*** Test Cases ***

Example

Should Be Equal ${0b1011} ${11}

Should Be Equal ${0o10} ${8}

Should Be Equal ${0xff} ${255}

Should Be Equal ${0B1010} ${0XA}

3. 布尔值和 None/ null变量

布尔值和 Python 的 None,Java 的 null 变量也可以用创建数字变量类似的语法创建:

*** Test Cases ***

Boolean

Set Status ${true} # Set Status 获得布尔值 true 作为参数

Create Y something ${false} # Create Y 获得字符串和布尔值 false 作为参数

None

Do XYZ ${None} # Do XYZ 获得 Python None 作为参数

Null

${ret} = Get Value arg # Checking that Get Value returns Java null

Should Be Equal ${ret} ${null}

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

4.空格和空(empty)变量

可以分别使用 ${SPACE} 和 ${EMPTY} 来创建空格和空字符串变量。这些变量很有用,如果不使用这些变量的话,就需要对空格或空单元格进行转义。如果需要一个以上的空格,也可以使用扩展变量语法来轻易获得,形如: ${SPACE * 5}。下面的例子中,Should Be Equal 关键字得到的参数值是相等的,但很明显使用变量的方式比使用 ‘\‘ 转义的方式更易理解。

*** Test Cases ***

One Space

Should Be Equal ${SPACE} \ \

Four Spaces

Should Be Equal ${SPACE * 4} \ \ \ \ \

Ten Spaces

Should Be Equal ${SPACE * 10} \ \ \ \ \ \ \ \ \ \ \

Quoted Space

Should Be Equal "${SPACE}" " "

Quoted Spaces

Should Be Equal "${SPACE * 2}" " \ "

Empty

Should Be Equal ${EMPTY} \

还有两个变量 @{EMPTY} 和 &{EMPTY},他们分别表示 ‘空列表’ 和 ‘空字典’ 变量。 这两个变量也是有用的,例如在写测试模板的时候,模板关键字不带参数使用时。

*** Test Cases ***

Template

[Template] Some keyword

@{EMPTY}

Override

Set Global Variable @{LIST} @{EMPTY}

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}

到输出目录的绝对路径

所有地方

python的变量对大小写并不敏感_Robot Framework 内置变量相关推荐

  1. Robot Framework 内置变量

    Robot Framework 内置变量 转自:https://blog.csdn.net/qq_26886929/article/details/53907755 Robot Framework 内 ...

  2. linux内置变量大全,(转)linux awk 内置变量使用介绍

    awk是个优秀文本处理工具,可以说是一门程序设计语言.下面是awk内置变量. 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个字段,字段间由FS分隔 FS 输入 ...

  3. Nginx内置变量及正则语法

    对于很多Nginx初学者来说,配置文件是必须要看懂的.但是当公司的Nginx配置文件放在你面前的时候你总会被一些带着"$"符号和一大推看不懂的的正则给正懵逼.没错带着"$ ...

  4. Python变量命名用法(一般变量、常量、私有变量、内置变量)

    #coding:utf8 __author__ = "libingxian"class TestDemo(object):"""Python变量命名用 ...

  5. Python变量作用域的规则以及如何搜索内置作用域

    喜欢编程,热爱分享,希望能结交更多志同道合的朋友,一起在学习Python的道路上走得更远!有不懂的问题可以私聊我哦! **作用域:**是指变量的生效范围,例如本地变量.全局变量描述的就是不同的生效范围 ...

  6. Python(8):模块内置变量

    写在前面 文章目录 模块内置变量 常用内置变量 __name__变量 __package__变量 __file__变量 __doc__变量 专栏目录 模块内置变量 常用内置变量 __name__变量 ...

  7. awk 内置变量与自定义变量

    点击上方"生信科技爱好者",马上关注真爱,请置顶或星标 作者:ghostwu 原文:https://www.cnblogs.com/ghostwu/p/9085653.html A ...

  8. awk取文本列_awk命令结构/内置变量/获取文本某行或某列

    awk脚本基本结构 awk 'BEGIN{ print "start" }pattern{ commands }END{ print "end" }' file ...

  9. Linux-awk及内置变量

    概述 awk(分析&处理) awk是一个数据处理工具,相比于sed常常作用于一整行的处理,awk则比较倾向于将一行分成数个"字段"来处理. 通常运行模式: awk ' 条件 ...

最新文章

  1. 请收下这份NLP热门词汇解读
  2. 用access做考场桌贴_利用Word、Excel、Access进行考务安排及学生成绩分析的有效途径-教育文档...
  3. CCSprite setTextureRect 的坐标的坑
  4. 【并查集】并查集的基本操作总结
  5. 版本变迁_一本书遍览古今中外红楼梦版本变迁
  6. Codeforces Round #425 D
  7. 导师评价网北工大计算机段老师,北京工业大学怎么样好不好(排名-师资-专业-评价)...
  8. iOS开发之创建颜色渐变视图View
  9. 阶段3 2.Spring_10.Spring中事务控制_1 基于XML的AOP实现事务控制
  10. python while快速写法_从零开始学Python,带你手把手实战之一
  11. cef 获取 html代码,CefGlue获取网页源代码
  12. 快速学习JasperReport-模板工具Jaspersoft Studio
  13. 【自动驾驶】Frenet坐标系与Cartesian坐标系(一)
  14. 未来,谁在革通信设备商的命?
  15. 22.【终结篇】poco/airtest+pytest+allure+jenkins框架篇
  16. SQL查询语句逻辑执行顺序
  17. V4L2框架-videobuf2
  18. 声网自研传输层协议 AUT 的落地实践丨Dev for Dev 专栏
  19. macOS如何快速将视频转化为音频mp3(软件全免费)
  20. 查看linux下程序或者动态库到底依赖哪些so动态库以及对应的版本

热门文章

  1. HDU-5532(LIS-nlogn)
  2. JDK, JRE 和JVM的区别
  3. 工具栏对象GUI Status 与GUI Title
  4. 如何让引擎蜘蛛天天光临你的网站
  5. QA: What's the difference between CustomControl and UserControl?
  6. java中抽象类的匿名子类和匿名对象
  7. Python_note7 文件和数据格式化+wordcloud库
  8. 利用 Anderson-Darling Test 安德森-达令检验样本数据是否来自特定分布(包括分布:‘norm‘, ‘expon‘, ‘gumbel‘, ‘extreme1‘ or ‘logisti
  9. Flink 1.3.2 Standalone模式安装
  10. Apache与Tomcat联系及区别