Robot Framework(9)- 使用变量文件

简介: Robot Framework(9)- 使用变量文件

如果你还想从头学起Robot Framework,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1770899.html

 

啥是变量文件


  • 变量文件包含了测试数据所需的变量
  • 虽然变量可以通过变量表格 *** Variables *** 中创建,或者通过命令行设置,不过这些方法有所局限,而变量文件可以动态地创建任意类型的变量
  • 变量文件一般由 Python 模块实现,语法完全是Python

 

在变量文件中,有两种方法来创建变量


直接创建变量

var = “变量值” ,这样等同于创建了 ${var} 变量

栗子

# var.py
MgrLoginUrl = 'http://localhost/mgr/login/login.html'
StudentLoginUrl= 'http://localhost/student/login/login.html'
database= ['127.0.0.1' , '3306']
adminuser= {'name':'auto' , 'pw':'sdfsdfsdf'}


通过特殊函数获取变量

  • 变量文件中可以包含一个特殊的函数 get_variables (或者  getVariables )
  • 该函数将变量按字典的形式返回,该函数还可以接受参数,所以比较灵活

 

使用变量文件


有两种方式

  1. 通过 settings 表
  2. 通过命令行

 

通过 Setting

简单栗子

*** Settings ***
Variables cfg.py


知识点

  • 变量文件中定义的所有变量在导入它的测试文件中都是可见的
  • 如果同时导入了多个变量文件并且存在名称冲突, 则最先导入的生效
  • 通过变量表格 *** Variables *** 和命令行方式设置的变量会覆盖变量文件中的同名变量【变量文件的变量优先级低】

声明变量文件时,路径搜索规则

首先,变量文件声明的时候,可以使用绝对路径,也可以使用相对路径

使用相对路径的时候,RF搜索变量文件规则和 搜索资源文件搜索规则一样

  1. 在测试文件当前目录进行匹配搜索
  2. 若没有,则在Python的模块搜索路径中搜索【robot -P 搜索路径 test.robot】

注意:不同目录间的分割符是 / ,而不是 .

Python 模块默认的搜索路径

本机的Python安装路径

image.png


目默认的录的栗子

目录结构

image.png

需求

在 test 目录下的 robot 文件中导入 var 目录下的变量文件

测试代码

image.png

运行命令

进入 robot 文件所在目录,cmd

robot  9_使用变量文件.robot

 

通过命令行(了解即可)

也是上面的跨目录栗子,执行以下命令即可

robot --variablefile ../var/9_var.py 9_使用变量文件.robot

 

相关文章
|
机器人 Python
Robot Framework之python脚本调用
前言 喜欢使用RF的原因之一就是能自己定义关键字,这篇就简单说下如何创建系统关键字,先来个最简单的,求比较两个数的大小 一、建立库文件 假设python的安装路径在D:/下面(作者是放在D:\python\python27) 1、在D:\python\...
3915 0
|
6月前
|
Swift Perl
OC和swift混合工程更新库时报:target has transitive dependencies that include statically linked binaries
OC和swift混合工程更新库时报:target has transitive dependencies that include statically linked binaries
98 0
|
机器人 Python
Robot Framework(12)- 详细解读 RF 的变量和常量(上)
Robot Framework(12)- 详细解读 RF 的变量和常量(上)
644 0
Robot Framework(12)- 详细解读 RF 的变量和常量(上)
|
机器人 Python
Robot Framework(11)- 用户关键字的详解
Robot Framework(11)- 用户关键字的详解
240 0
Robot Framework(11)- 用户关键字的详解
|
机器人 Python
Robot Framework(15)- 扩展关键字
Robot Framework(15)- 扩展关键字
206 0
Robot Framework(15)- 扩展关键字
|
存储 机器人 测试技术
Robot Framework(10)- 使用资源文件
Robot Framework(10)- 使用资源文件
252 0
Robot Framework(10)- 使用资源文件
|
机器人
Robot Framework(6)- BuiltIn 测试库常用的关键字列表
Robot Framework(6)- BuiltIn 测试库常用的关键字列表
258 0
Robot Framework(6)- BuiltIn 测试库常用的关键字列表
|
机器人 Java 测试技术
Robot Framework(2)- 快速安装
Robot Framework(2)- 快速安装
212 0
Robot Framework(2)- 快速安装
|
机器人
Robot Framework(14)- Variables 表的详细使用和具体例子
Robot Framework(14)- Variables 表的详细使用和具体例子
259 0
Robot Framework(14)- Variables 表的详细使用和具体例子
|
机器人 索引 Python
Robot Framework(13)- RF 循环的详细使用
Robot Framework(13)- RF 循环的详细使用
693 0
Robot Framework(13)- RF 循环的详细使用