Rf语法之变量的使用
T``,Ehv0
}o;l*fZf.w3s0
(r&k*L5Ry0一.变量的类型51Testing软件测试网5M
D3}#lE
Gg`
51Testing软件测试网:j$]3^M-`
变量标识符:$、@
$_ J7~(}U4r r0 ${name}或@{list1}51Testing软件测试网OSPV,c@~&p%EM
k FN;W2~0 1.内建变量:系统级变量,可以直接调用51Testing软件测试网`K:w
E!YG$VQ@
*常用的内建变量
T;Tq5u$?7`0${/} :斜杠51Testing软件测试网;]'{?R K$S
${CURDIR}:工程文件的绝对路径
(w~+W^/p(^9HPj0${EXECDIR}:测试执行开始目录的绝对路径51Testing软件测试网'Z3nA-F"ETU8u
${True}:True51Testing软件测试网]sC)xohH
${PREV_TEST_STATUS}:上一个用例的状态
,sc_N$J[)Q3gv%k0${TEMPDIR}:临时文件夹的路径51Testing软件测试网!D4Onxn
${EMPTY}:空51Testing软件测试网,c)W'i3Y`
${SPACE}:空格
C)W c)@&~)?jv(b&Q0
4Om|v*h!i5~4}02.用户自定义变量51Testing软件测试网ePJQLi A&Yen$Bv
51Testing软件测试网A)P@8Ia0h
二.变量的定义51Testing软件测试网A`"rKU&CR_
不需要特别声明,直接赋值即可51Testing软件测试网(TFH eG&dB4i'm
1. 使用专门关键字
5d
g%N4R:K3Sp"R)\0
+@mcu#`0字符串变量的创建51Testing软件测试网2G!c S_$oky'xho
Set Variable
A6Y(^&?rX0K]'t-w:]0${name}Set Variableaaaaaa51Testing软件测试网#}
Z3?)b r/r#O@@
log${name}
6{0pE9d9CQVT.J(W Y0Set Test Variable@{list1}111222
5X%K,}B](g0 Set Variable if51Testing软件测试网
z#v
|1B"w8]h y]}
Set Test Variable
!kaG;['s~#U0 Set Global Variable
8lHco[a0 Set suite valiable
3S"jH,f(c$J@3z;]0
?D/n
t{x\1x-Z"R'?,Tn
T0 列表变量51Testing软件测试网| h1V*Dt+P
@{list1}Create Lista21
3jC8w~;{
g0log${list1[0]}:注意这里的调用
,q,V l,`%w{0 51Testing软件测试网.Om;zu'uBk
字典变量:
[a| Hk0${dict1}Create Dictionarykey1123key245651Testing软件测试网T:L#QSdQ*}m
log${dict1['key1']}51Testing软件测试网8_TEl dW-B
${dict1}Create Dictionarykey1=122key2=45651Testing软件测试网vR*u'S-mw9o
log${dict1['key1']}
'YR@x
j[)a0使用函数返回值51Testing软件测试网$GOP"L"p
如:51Testing软件测试网.B$z{,[*~
rq9W%Y
&p*]Xii?02. 使用rf自带的variable进行手工添加。注添加dict变量时,参数为id=123这种形式:
B7G}/DW;N03. 使用变量文件定义(py文件),然后导入后,即可使用
^&N7T)V4C&xH0 *如果使用参数,则需要使用特殊函数get_variables
)|NP
lu0如51Testing软件测试网'{ oF8A'hSHVR+ey
#coding=utf-851Testing软件测试网Qq R \/Q9wMhs
import sys
Rs]@0X#a\,heL0
(UeG%V(}4\0variables1 = {'scalar': 'var1',51Testing软件测试网l8K/|0dtb~
'LIST__list': ['List','variable']}51Testing软件测试网#T-it&hP~
variables2 = {'scalar' : 'var2',51Testing软件测试网j_
W)`+|T)}G
'LIST__list': ['Some','other','value'],51Testing软件测试网Eke8Bb%i
'extra': 'variables1 does not have this at all'}
C6\2X|~PT;{1~
W0 51Testing软件测试网o'Y)T,{\Kq2h,zDw2b
def get_variables(arg):51Testing软件测试网&g+^tH%]X
if arg =='sss':51Testing软件测试网 M4Y Tz({2Y8pcR1u
return variables1
tr2J\$@~`0 else:51Testing软件测试网 YG_C?EZ#W
return variables2
T8yiAs9c
sh v0
Y ?I,M6Uef0设置变量${name}=12351Testing软件测试网]+p$Qo~'_Z-Si
Setting写入
TSz k*Ovq!}L Q+}j0
:Q%exJN8b(vUx0
-{V N\DzT0还可以导入需要使用YAML文件与机器人框架 PyYAML 模块安装。 如果你有 pip安装,可以安装它只需运行 pip安装pyyaml
L3Sj$R1};z(B0 51Testing软件测试网8y#_!\e"K_,kc
注意冒号后面都要有空格
+ytk@U!e+O0 age : 1251Testing软件测试网"q(FQJ!jv&l(~
name : huang51Testing软件测试网]9};]{^H
G?E/Rb
y051Testing软件测试网\O-pHSl
W
dict1:51Testing软件测试网qe{p1E'w
YAML: yaml.org
"b2cV7S!G1a"|0 Ruby: ruby-lang.org 51Testing软件测试网+kk`#@kV
Python: python.org 51Testing软件测试网Y#CVY6o;~V
Perl: use.perl.org
a+Jk&o2tn$J0 aaa: ssss51Testing软件测试网LHrag4I|B F I
list1:51Testing软件测试网
mRi(f'L3A\GGjs
- a
"q;Vw-C~0 - b51Testing软件测试网%w8n-YE9D,IO
- c
qy!]6UE}#c0log${age}51Testing软件测试网
TV]:W2y&qA
log${dict1['aaa']}
m&_b.}G,G0w&PN+Y0log${list1[1]}51Testing软件测试网}1E,yy#ETOM
A ]uO8x} GVy6B9V0
#[)ri/gh8lX,\*Dm0${type}Evaluatetype(${dict1})51Testing软件测试网!^;]LV-ft/]j ^
${type2}Evaluatetype(${list1})
A!iie#n0