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

相关推荐
观熵21 小时前
SaaS 系统的自动化部署结构设计实战指南:基于 K8s + Helm 的工程落地路径
运维·kubernetes·自动化·saas 架构
视觉震撼1 天前
逐步指南:为大模型构建自动化知识图谱
运维·自动化·知识图谱
北京耐用通信1 天前
耐达讯自动化Profibus光纤链路模块:跨行业通信的“隐形桥梁”,让控制更丝滑!
人工智能·网络协议·自动化·信息与通信
玩大数据的龙威1 天前
【乱占耕地建房】—试点工作平台自动化填报系统
运维·自动化
小白学大数据1 天前
绕过拼多多 App 反抓包机制的综合逆向解决方案
开发语言·爬虫·python·自动化
weixin_462446231 天前
使用 Python 脚本自动化管理 Docker 容器:启动、修改密码、删除及系统资源监控
python·docker·自动化·系统监控
徐111 天前
自动化检测系统投资回报分析:思看科技如何助力企业降本增效
python·科技·物联网·自动化
小程故事多_801 天前
打破传统桎梏,LLM 让智能运维实现从 “自动化” 到 “自进化”
运维·人工智能·自动化·aigc
oh,huoyuyan1 天前
火语言 RPA “按住滑块拖动到最右边” 自动化案例
运维·自动化·rpa
合合技术团队1 天前
5分钟自动化财报抽取:基于TextIn+Coze的实践方案
自动化·coze·textln