Robot Framework的 if/else语句

一. 简介

在Robot Framework中,可以使用多个 IF/ELSE 条件来实现不同的测试逻辑。IF 语句用于在满足条件时执行特定的测试步骤,而 ELSE语句则用于在条件不满足时执行其他步骤。

本文来学习 Robot Framework 框架中 if/else 语句的语法以及使用。

二. Robot Framework的 if/else语句

1. Run Keyword If 语句

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

举例说明其用法:

*** Variables ***
${login_name}   Set Variable  admin
${name}    Set Variable  LingXiaoZhan

*** Test Cases ***
Show Admin Menu If User Is Admin
    [Documentation]    验证管理员
    Run Keyword If  '${login_name}' == '${name}'  Log  This is a same name
    ...    ELSE    Log   This is not a same name

2. IF...ELSE IF...END语句

在 Robotframework 4.0版本 中引入了IF/ELSE,使用方法很简单,举例说明:

*** Test Cases ***
Example
    ${var1}    Set Variable    1
    ${var2}    Set Variable    2
    IF    ${var1} < ${var2}
        Log  var1 is less than var2
    ELSE IF    ${var1} > ${var2}
        Log  var1 is greater than var2
    ELSE
        Log  var1 is equal var2
    END

结果输出如下:

IF/ELSE 语句还有一种用法,就是当IF后面没有接 ELSE IF或 ELSE时,IF后面要接 END。下面来举例说明:

*** Test Cases ***
Compare Two Numbers
    ${var1}    Set Variable    90
    IF  ${var1}>0  
        Log   value is positive number
    END

3. 嵌套 IF/ELSE语句

在 4.0版本 robotframework 以前是不支持 IF嵌套的,在引入了 IF/ELSE后才支持的IF嵌套。IF嵌套示例如下:

*** Test Cases ***
Compare Two Numbers
    ${var1}    Set Variable    90
    IF  '${var1}'!='$EMPTY'
        IF  ${var1}>0
            Log  number is positive number
        ELSE 
            Log  number is negative number
        END
    END

结果输出如下:

4. Set Variable If 语句

Set Variable If 语句 是 robotframework 中比较常用的 If 关键字,用于根据条件设置变量值的关键字。

语法结果如下:

Set Variable If    condition    value_if_true    [value_if_false]

condition: 一个布尔表达式,决定是否设置变量为 value_if_true。
value_if_true: 如果条件为真,则将变量设置为这个值。
[value_if_false]: 可选参数,如果条件为假,则将变量设置为这个值。如果没有提供此参数且条件为假,则变量将保持不变或未定义。

举例说明:

*** Test Cases ***
Verify the user is a administrator
    [Documentation]   Verify the user is an administrator
    ${is_admin}  Set Variable  ${True}
    ${menu}=  Set Variable If  ${is_admin} == True  Admin Menu   User Menu
    Log  ${menu}  #输出 Admin Menu

关于 条件判断语句先简答学习到这里。

相关推荐
喜欢猪猪5 小时前
Jenkins:开源自动化工具深度剖析
开源·自动化·jenkins
人类群星闪耀时6 小时前
机器学习在自动化运维中的应用:提升运维效率的新利器
运维·机器学习·自动化
白白白白白kkk11 小时前
【Ubuntu】脚本自动化控制终端填充
linux·ubuntu·自动化
LCL_1811 小时前
ansible 自动化运维工具(三)playbook剧本
linux·运维·自动化·ansible
lifeng432111 小时前
Ansible自动化运维(三)playbook剧本详解
运维·自动化·ansible
Karoku06613 小时前
【自动化部署】Ansible 基础命令行模块
运维·服务器·数据库·docker·容器·自动化·ansible
海阔天空_201313 小时前
Python pywin32库详解
python·自动化
大霞上仙14 小时前
selenium-ide web 自动化录制工具
ide·selenium·自动化
大霞上仙18 小时前
web 自动化 selenium
运维·自动化