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 关于 条件判断语句先简答学习到这里。

相关推荐
九章云极AladdinEdu3 天前
超参数自动化调优指南:Optuna vs. Ray Tune 对比评测
运维·人工智能·深度学习·ai·自动化·gpu算力
学生信的大叔3 天前
【Python自动化】Ubuntu24.04配置Selenium并测试
python·selenium·自动化
GAOJ_K3 天前
弧形导轨如何提升新能源汽车的能效和续航里程?
科技·自动化·汽车·制造
全栈工程师修炼指南3 天前
告别手动构建!Jenkins 与 Gitlab 完美协作,根据参数自动化触发CI/CD流水线实践
运维·ci/cd·自动化·gitlab·jenkins
Source.Liu3 天前
【Pywinauto库】12.2 pywinauto.element_info 后端内部实施模块
windows·python·自动化
Source.Liu3 天前
【Pywinauto库】12.1 pywinauto.backend 后端内部实施模块
开发语言·windows·python·自动化
宇钶宇夕3 天前
西门子 S7-200 SMART PLC 核心指令详解:从移位、上升沿和比较指令到流水灯控制程序实战
运维·算法·自动化
大视码垛机4 天前
速度与安全双突破:大视码垛机重构工业自动化新范式
大数据·数据库·人工智能·机器人·自动化·制造
疯狂的维修4 天前
关于Gateway configration studio软件配置网关
网络协议·c#·自动化·gateway
arbboter4 天前
【自动化】深入浅出UIAutomationClient:C#桌面自动化实战指南
运维·c#·自动化·inspect·uiautomation·uia·桌面自动化