• RobotFramework流程控制(最新版本)


    一 分支流程

    1. 关键字:Run Keyword If

      Run Keyword If关键字是RF4.0版本之前用于控制分支流程的一个常用关键字,在4.0版本RF引入了IF/ELSE,可能以后就使用IF/ELSE替代Run Keyword If了,现在最新版本6.1还是同时支持Run Keyword If和IF/ELSE的。
    Run Keyword If 的语法如下

    Run Keyword If    条件    动作
    ...    ELSE IF    条件    动作
    ...    ELSE If    条件    动作
    ...    ...        ...     ...
    ...    ELSE    动作
    
    • 1
    • 2
    • 3
    • 4
    • 5

    要注意的是ELSE IF和ELSE 一定要大写
    示例如下

    在这里插入图片描述
    在这里插入图片描述

    2. 关键字:IF/ELSE

      IF/ELSE是RF在4.0版本引入的一个控制分支流程的关键字,它的作用同Run Keyword If一样,但比Run Keyword If简洁。它的语法如下

    IF    条件    动作
    ...   ELSE IF    条件    动作
    ...   ELSE IF    条件    动作
    ...   ...        ...     ...
    ...   ELSE    动作
    
    • 1
    • 2
    • 3
    • 4
    • 5

    其中要注意的是ELSE IF和ELSE 也要大写
    示例如下
    在这里插入图片描述
    在这里插入图片描述

      IF/ELSE还有一种用法,就是当IF后面没有接ELSE IF或ELSE时,IF后面要接END,即IF/ELSE变成IF/END,如下
    在这里插入图片描述
    在这里插入图片描述

    目前6.1版本ELSE IF和ELSE后面的关键好像不会高亮显示,但是IF/END后面的关键字会高亮显示,简单的逻辑就用IF/END吧。

    3. 嵌套IF/ELSE

      RF在4.0版本以前用Run Keyword If来控制分支流程的时候是不支持IF嵌套的,在引入了IF/ELSE后才支持的IF嵌套。IF嵌套示例如下
    在这里插入图片描述
    在这里插入图片描述

    4. 关键字:Set Variable If

      Set Variable If也是RF中比较常用的If关键字,用来在满足条件判断下给变量赋值。
    Set Variable If 语法如下

    Set Variable If    条件    值
    
    • 1

    使用示例:
    在这里插入图片描述
    在这里插入图片描述

    二 循环流程

    1. 普通FOR循环

      最新版本RF中的FOR循环用关键字FOR替代了以前的 :FOR,其格式越来越和python类似了。FOR循环语法如下

    FOR    ${item}    IN    遍历对象
    	   keyword
    END
    
    • 1
    • 2
    • 3

    其中要注意的是在遍历列表或字典对象的时候要用 @{list} 或者 &{dict},示例如下
    在这里插入图片描述
    在这里插入图片描述

    2. 嵌套FOR循环

      在RF6.1版本已经可以实现FOR嵌套循环(具体在哪个版本引入的暂还不知道),有了嵌套的FOR循环,在编写RF的时候就会更加得心应手。
    语法就是两个FOR循环嵌套,如下
    在这里插入图片描述
    在这里插入图片描述

    3. 退出循环

      在RF5.0版本之前结束整个循环用的是关键字Exit For LoopExit For Loop If;结束本次循环用的是关键字Continue For LoopContinue For Loop If,而在RF5.0版本后分别用BREAKCONTINUE来替换前面的关键字。如下

    • 退出整个循环Exit For Loop,Exit For Loop If和BREAK
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
    • 退出本次循环Continue For Loop,Continue For Loop If和CONTINUE
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      其中要注意的是:BREAK,CONTINUE必须大写

    4. 其它常用循环

      除了标准的FOR循环外,还有一些比较常用的其它FOR循环,如下

    • FOR…IN RANGE循环
      语法:
    FOR    ${item}    IN RANGE    start  end  step
    	keyword
    END
    
    • 1
    • 2
    • 3

    它的效果其实和python中的for…in range()效果是一致的,如下
    在这里插入图片描述
    在这里插入图片描述

    • FOR…IN ENUMERATE循环
      语法:
    FOR    ${index}    ${value}    IN ENUMERATE    操作对象
    	keyword
    END
    
    • 1
    • 2
    • 3

    它的效果其实和python中的for…in enumerate()效果是一致的,如下
    在这里插入图片描述
    在这里插入图片描述

    • FOR…IN ENUMERATE循环
      语法:
    FOR    ${index}    ${value}    IN ZIP   操作对象1    操作对象2    
    	keyword
    END
    
    • 1
    • 2
    • 3

    它的效果其实和python中的for…in zip()效果是一致的,如下
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    ubuntu20.04配置vnc文件xorg.conf后重启输入开机密码后一直循环在登入界面的问题
    Spring_boot之自动加载自己的AutoConfiguration
    iOS基础介绍(二)
    DevExpress WinForms图表组件 - 直观的数据信息呈现新方式!(一)
    1024程序员节,一个ETL工程师的日常工作
    关于高德地图2.0卡顿问题的解决方案(chrome设置+显卡设置)
    测绘常用程序C语言
    [Python进阶] Pyinstaller打包模式
    【P37】JMeter 仅一次控制器(Once Only Controller)
    读图数据库实战笔记01_初识图
  • 原文地址:https://blog.csdn.net/qq_44690947/article/details/132652140