Robot Framework常用语法
一:变量标识符号
(1) Scalar型变量: "$"作为标识符号,例如:${var}, 这个打印log时只能用log
set赋值:
a: ${var} Set Variable abc
b:${var2} Set Variable If '${Var}'=='abc' efgh ace 如果var的值和abc相等,则efgh赋值给var2,不相等就赋值ace给var
get赋值(主要用于返回值):
a: ${getVal} Get Length ${var2} 获取var2值的长度
b: ${getVal2} Get Time 获取时间
使用方式
a. 变量变为字符串: 01234${var}adv 不需要任何的其他符号
b. 字符串截取:比如截取第三个字符串,${var[2]}; 如截取第第1个到第3个字符串,${var[0:3]}
c.字符串变为整型:int(${var})
(2) List型变量: "@"作为标识符号,例如: @{lvar},这个打印log时用log many
赋值方式:
a: Create List进行赋值(正式):@{var} Create List 3 2 1
b: Set Variable进行赋值(非正式):@{var} Set Variable 3 2 1
使用方式:
a: 一维,获取list列表中的某个元素:方式1:@{uselist}[index];方式2:${uselist[index]}
b: 二维,现有一维@{listA}和@{listB},组成二维必须是 @{listC} Create List ${listA} ${listB}; A和B的list前面必须改为$,否则还是一维的;
获取二维中某元素,方式1:@{listC[index]}[index];方式2:${listC[index][index]}
(3)List和Scalar之间的相互转换
List转化为Scalar
List变量:@{List} 变量转为Scalar,那么直接写成${List}
Scalar转化为List
${List}, 直接写成@{List}
注意:在变量没有初始化之前,这样互换才可以,如果初始化或者赋值后,则互换的值是初始化的值,不再跟随变量的改变而改变
(4) 设置全局变量:Set Global Variable,当执行完这个后,这个变量的所有测试案列和测试套件都有效
(5) 特殊字符常量:${/}, ${:}, ${EMPTY}, ${False}, ${null}, ${None}, ${SPACE}, ${True}
(6)变量文件操作
注:变量文件只支持Python写的.py文件
变量文件可以在suite的Import的地方去引用这个文件
二:获取本地时间
get time来获取本地时间
例子:${val} gettime
三:设置休眠时间
sleep以秒为单位
例子: sleep 10,让程序10s后再继续进行
四:If 语句
Run keyword if elif else
例子:
Run keyword if 判断条件 操作动作
如果是多条件判断,需要在判断条件中使用AND连接,必须是大写
五:For循环
(1). 老版本的ride使用
:FOR ${i} Inrange 10
END
(2). 新版本ride使用
FOR ${i} INRANGE 10
END
(3). 中断循环
Exit For Loop If 判断条件
注意:不能循环中加循环体,但是可以把一个循环封装成关键字来执行
(4)分支
Run keyword if 条件1 do action1
... ELSE IF 条件2 do action2
... ELSE do action