《我的RobotFramework书》1-6-4 变量的属性和作用范围
来源:互联网 发布:类似快看小说的软件 编辑:程序博客网 时间:2024/06/07 22:16
变量的属性和作用范围
作者: 虞科敏
属性, Properties
命令行设置的变量
- 命令行设置的变量拥有在测试开始执行前,所有能设置变量的最高优先级: 可以覆盖Test Case File中
- Variable Table, 导入的Resource File和Variable File的相关设置
- --variable (-v) 优先于 --variablefile (-V)
- 如果设置同一个变量多次,后面的设置会覆盖前面的设置
- 可以在启动脚本中设置变量,这种情况会覆盖命令行选项的设置同名变量
- 如果在多个变量文件中设置同名变量,第一次设置的变量具有最高优先级(先导入优先原则)
在Test Case File的Vaiable Table中设置的变量
- 对于本文件中的所有Test Case可用
- 会覆盖文件中通过导入Reousrce File和Variable File创建的同名变量
- 本文件中其他的表(如Setting Table可以使用本文件中Vairable Table中创建的变量)
通过导入Resource File和Variable File设置的变量
- 在Test Data中设置的变量中,优先级最低
- 来自Resource File的变量 和 来自Variable File的变量,优先级相同
- 对于来自Resource File和Variable File的同名变量,采用"先导入优先原则"
- 如果一个Resource File导入其他Rsource File和Variable File, 采用"本地优先于导入"的原则
从Resource File和Variable File导入的变量,对于导入它们的文件中的Variable Table不可用
Tips: Variable Table的处理先于Setting Table的处理(Resource File和Variable File在Setting Table中被导入)
在执行过程中设置的变量
在执行过程中设置的变量(通过关键字返回值设置,或者使用内建变量设置关键字)会覆盖其作用域内的同名变量
但其不会影响作用域外的变量
内建变量
内建变量拥有最高优先级,不能被Vairable Table或者命令行所覆盖; 但它们可能被框架重置
数字变量是个例外: 当变量不能被找到时,它们会被动态解析; 这样它们可能被覆盖,但不推荐这样做!
作用范围, Scope
全局范围
以下变量具有全局范围:
通过命令行选项创建的变量 内建关键字"Set Global Variable"设置(和修改)全局变量 内建变量
全局范围变量,建议使用全大写命名
Test Suite范围
以下变量具有Test Suite范围:
Varaible Table创建的变量通过Resource File和Variable File导入的变量 内建关键字"Set Suite Variable"设置(和修改)的变量
Test Suite范围变量,建议使用全大写命名
Test Case范围
以下变量具有Test Case范围:
内建关键字"Set Case Variable"设置(和修改)的变量
Test Case范围变量,建议使用全大写命名
本地(Local)范围
以下变量具有Local范围:
通过扩展关键字的返回值创建的变量,用户自定义关键字使用其作为参数
Local范围变量,建议使用全小写命名
0 0
- 《我的RobotFramework书》1-6-4 变量的属性和作用范围
- 《我的RobotFramework书》1-6 变量, Variable
- 变量和函数的作用域、链接属性、存储范围
- java变量的类别和作用范围
- 《我的RobotFramework书》1-6-1 创建变量, Creating Variables
- 《我的RobotFramework书》1-6-2 变量文件, Vairable Files
- 《我的RobotFramework书》1-6-3 内建变量, Build-in Variables
- 变量及函数的生存期、作用范围、链接属性
- 内存变量的作用范围
- javaScript变量的作用范围
- Java变量的作用范围
- 02 变量的作用范围
- 静态变量的作用范围
- javascript 变量的作用范围
- PHP的变量作用范围
- Java变量的作用范围
- 《我的RobotFramework书》1-4 测试套件, Test Suite
- 《我的RobotFramework书》 - 篇首
- 再谈Json解析
- Linux下更改移动硬盘卷标
- 详解pandas数据结构和索引
- UI-TextView
- FreeSWITCH channel variables(信道变量)
- 《我的RobotFramework书》1-6-4 变量的属性和作用范围
- js生成二级城市联动菜单,动态生成年、月、日字段,生产一个验证码
- Android开发项目实践(集)
- Java 序列化和反序列化
- Go学习日记<一>
- 【opencv练习07 - 滤波器(锐化)】
- Nginx-----反向代理Google
- DNS修改即时生效
- ViewDragHelper学习