内容转载自:
海盗雪绒花的测试博客
copyBookmarkhttp://www.51testing.com/?21116
RobotFrameWork从2.7.4版本开始,支持一项激动人心的功能——IF关键字。也就是我们可以在RF的脚本中增加条件判断语句。那么我们来看看如何在RF中使用IF关键字。
1.单重条件判断
写一个普通的IF ELSE结构条件判断语句:
运行结果如下:
显然IF关键字起作用了。所有的语句都放在同一行,显得很不美观。我们修改一下,把ELSE语句放在第二行,同时在ELSE语句前增加一个“...”。
运行结果:
结果没有任何问题,说明可以使用“...”将ELSE语句换行写。
2.多重条件判断
上面只是一个IF ELSE结构。如果是多重条件判断,该如何写呢?让我们使用ELSE IF语句,示例如下:
运行结果:
显然我们平常所熟悉的IF ELSE语句在RobotFrameWork中可以正常使用,而且使用习惯也没有任何变化。
3.利用IF关键字给变量赋值
IF关键字还提供了另外一种使用方法。在给一个值赋值时,可以直接使用IF关键字。示例如下:
${result}变量后面接“Run Keyword if”关键字,根据${month}变量的值给${result}变量赋予不同的值。运行结果如下:
另外RobotFramework还提供了一个“set variable if”关键字,简化了利用IF关键字给变量赋值的语句,示例如下:
4.unless关键字
if关键字,当判断条件为“true”时,后面的语句才会执行。而robotframework又提供了一个“unless”关键字。与“if”关键字相反,只有当判断条件为“false”时,后面的语句才会执行。示例如下:
查看运行结果:
条件为“false”,log语句被执行。robotframework帮助的示例中,unless和if关键字是联合使用的。不过我个人觉得这个关键字有些画蛇添足。
注:以上代码的运行环境是robotframework2.7.5,robotframework_ride-1.0,python2.7