变量表中声明变量

这篇博客介绍了Robot Framework中变量的声明和使用,包括在变量表、测试套件和资源文件中的定义。讲解了列表变量、字典变量的使用方式,以及如何通过引用资源文件来实现变量和用户关键字的复用。强调了将变量放在资源文件中的好处,以提高代码的可读性和维护性,并讨论了Python扩展关键字的定义规则。同时,提到了路径管理和搜索规则,包括相对路径和Python模块搜索路径的使用。
摘要由CSDN通过智能技术生成

变量表中声明变量

首先我们要创建Variables表

***Variable***
${MgrloginUrl}          http://localhost/mgr/login.html
${StudentLoginUrl}      http://localhost/student/login/login.html

rf变量可以在用例里面定义,也可以在变量表里面定义

rf中的变量可以在测试套件文件中声明一个变量表。写法就是这样:Variables,对套件里的所有的测试用例都是有效的

*** Settings ***

*** Variables ***
${MgrloginUrl}          http://localhost/mgr/login.html
${StudentLoginUrl}      http://localhost/student/login/login.html

*** Test Cases ***
case1
    log to console     ${MgrloginUrl}
    log to console     ${StudentLoginUrl}
case2
    log to console     ${MgrloginUrl}
    log to console     ${StudentLoginUrl}

定义好了之后,只要改变变量就行

rf支持4种类型的表
Settings表:配置表;
Test Case:用例表;
Keywords:关键字表;

Variable:变量表。

List变量

  • @{database} 127.0.0.1 3306

Dict变量

  • ${user1} name=auto pw=sdfsdfsdf

使用整个变量

*** Variables ***
${MgrloginUrl}          http://localhost/mgr/login.html
${StudentLoginUrl}      http://localhost/student/login/login.html
@{database}     127.0.0.1       3306
&{adminuser}        name=auto       pw=sdfsdfsdf

*** Test Cases ***
case1
    log to console     ${database}     #这样使用整个列表$
    log to console     ${adminuser}     #这样写使用整个字典

#结果:['127.0.0.1', '3306'] name=auto pw=sdfsdfsdf

如果只想使用变量里面的单个的元素

*** Variables ***
${MgrloginUrl}          http://localhost/mgr/login.html
${StudentLoginUrl}      http://localhost/student/login/login.html
@{database}     127.0.0.1       3306
&{adminuser}        name=auto       pw=sdfsdfsdf

*** Test Cases ***
case1
    log to console     @{database}[1]           #这样使用单个的端口号
    log to console     &{adminuser}[name]       #这样写使用单个名字

#结果:3306 auto

用户关键字为什么放到资源文件里面?就是复用性高,如果变量也是想在整个套件中使用。也可以放到资源文件里面
同样也是要在*** Settings ***里面Resource xx.robot 和关键字一样在同一个文件里,关键字申明过了,就行了
(定义字典关键字的图)在这里插入图片描述

实际项目中可以弄一个用户关键字的keyword.robot的配置文件;在弄全局配置项config.robot配置文件。便于读写,便于维护
在用例的* Settings *表里面申明两个文件

也可以把变量文件写在python文件里面,用关键字Variables 同一个路径下面直接Variables xxx.py (也可以用绝对路径,但是不建议使用)。Variables搜索文件的时候。会在用例的同级目录下面找,如果找不到就在python的模块的搜索路(标准库,python.path)里面找。目录间的分割符是斜杠,不是点。
(有图)
在这里插入图片描述
单独加上来的
相对路径最好不要相对当前的文件的路径,最好相对当前项目的根目录。这时候所有的关键字文件,变量文件,都能找到。只要把rf项目的根目录作为py的模块搜索路径,就能解决这样的问题。不会因为层级的变化。而导致申明文件失败。所有的导入路径都是基于项目的根目录。

使用相对路径的时候,RF搜索规则和资源文件搜索规则一样:
先在相对当前文件的目录,匹配搜索
在python的模块搜索路径中搜索,可以用–pythonpath参数 (意思就是在pythonpath里面添加当前目录的路径)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Python扩展关键字

Python模块作为测试库
模块文件名作为测试库的名字
比如Python模块叫MyLibrary,对应的Python文件是Library.py。那么测试库名字就是MyLibrary
定义在Python模块文件中的函数,名称前有_前缀的不会作为关键字

def returnlist():
	return[1,2]
	
	
def _returnlist():          #不会作为关键字的,有下划线就不可以
	return[1,2]

申明Library的时候,最好是用点形容路径。
而Resourse,Variables都是用/表示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

初遇我ㄖ寸の热情呢?

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值