条件判断
run keyword if condition name *args
... ELSE IF conditon name *args
...ELSE name *args
condition:python表达式,条件表达式参数 传给python中的eval()函数
name:条件满足时执行关键字,只能执行一个关键字
*args:关键字name的参数
注意:1、ELSE 必须要大写 且是新版本才有的语法,老语法是 run keyword unless(可单独使用)
2、RF中解决太长的问题,可以用下一行前面加 三个点的省略号,在测试用例中,下一行的省略号前面必须留有一个以上的空单元格,下一行的省略号前面必须留有一个以上的空单元格,
例子:
${num1} get value from user 请输入第一个数字 5
${num2} get value from user 请输入第二个数字 6
run keyword if int(${num1}) > int(${num2}) log to console ${num1} > ${num2}
... ELSE IF int(${num1}) < int(${num2}) log to console ${num1} < ${num2}
... ELSE log to console ${num1} == ${num2}
run keyword unless使用(如果条件不满足则执行关键字)
run keyword unless 1 == 2 log to console 1 != 2 结果会输出 1 != 2
循环语句
RF中循环只有FOR循环
Exit For Loop 关键字实现break功能
用Continue For Loop 关键字实现continue 功能,
也可以使用 等价的关键字Continue For Loop If Exit For Loop If
想实现while的功能需要使用大Range
例子:
${listvar1} create list 1 2 3
# 老语法
# 如果后面的变量是个list, 一定要写成 @的形式,而不是$的形式
:FOR ${var} IN @{listvar1}
log to console ${var}
log to console 循环外面
# 新语法
FOR ${var} IN @{listvar1}
log to console ${var}
END
log to console 循环外面
Range用法
注意:IN RANGE之间只能有一个空格
FOR ${var} IN RANGE 5
log to console ${var}
END
# 指定起止范围,不包括最后一个元素
FOR ${var} IN RANGE 1 5
log to console ${var} # 打印1 2 3 4
END
# 指定步长
FOR ${var} IN RANGE 1 5 2
log to console ${var} # 打印1 3
END