- 何为变量文件?
变量文件中包含了测试数据中的变量。虽然变量可以通过变量表格中创建, 或者通过命令行设置, 不过这些方法有所局限, 而变量文件可以动态地创建任意类型的变量。
变量文件一般由Python模块实现, 有两种不同的方法来创建变量:
方法一:直接创建变量
变量就是模块的属性。最简单的情形下, 这种语法几乎不需要真正的编程。 例如, MY_VAR = 'my value'
就创建了变量 ${MY_VAR}
, 后面是变量的值。
方法二:通过特殊函数获取变量
变量文件中可以包含一个特殊的函数 get_variables
(或者 getVariables
), 该函数将变量按字典的形式返回。该函数还可以接受参数, 所以这种方法非常灵活。
方法一示例:
导入变量文件 myvar1.py
MY_VAR = 'my value' my_name='test'
rf用例 test2:
执行结果:pass
方法二示例:见另一篇博文介绍https://www.cnblogs.com/chengchengla1990/p/9890926.html
- 如何使用变量文件
方法一:所有的测试数据文件都可以在设置表Setting中通过 Variables 来导入变量。
如果 变量文件可以接受参数, 这些参数跟在路径后面的单元格中, 并且这些参数同样可以使用变量。
注:变量文件中定义的所有变量在导入它的测试文件中都是可见的,如果同时导入了多个变量文件并且存在名称冲突, 则最先导入的生效。此外, 通过变量表格和命令行方式设置的变量会覆盖变量文件中的同名变量。
方法二:
通过命令行选项 --variablefile
来指定变量文件。选项后面跟着文件的路径, 如果要传递参数的话, 使用冒号 (:
) 来分隔:
从Robot Framework 2.8.7版本开始, 还可以使用分号(;
)作为参数的分隔符. 这种情况对参数本身也包含冒号时特别有用. 不过需要注意, 在UNIX-like操作系统中, 要使用双引号将整个选项值括起来:
这些变量文件中的变量在所有测试文件中全局可见, 这点和通过选项 --variable
来设置 单个变量 类似.
如果同时使用了 --variablefile
和 --variable
选项, 并且发生变量名冲突, 则使用 --variable
选项设置的变量胜出.