【问题标题】:RobotFramework: Get Return Value When Using 'Run Keyword {if, unless}'RobotFramework:使用“运行关键字{if,除非}”时获取返回值
【发布时间】:2015-02-28 01:08:43
【问题描述】:

从 RobotFramework 中的关键字获取返回变量通常很容易,只需将返回值放入关键字中,然后在变量之后运行关键字以存储返回值。

当我想有条件地运行该关键字时遇到了问题。 Run Keyword IfRun Keyword Unless 关键字以及 Wait Until Keyword Succeeds 关键字都期望关键字作为第一个参数,如果第一个参数是变量,则会引发错误。

目前我正在通过在我知道我将有条件地运行的关键字中设置套件级别变量来解决这个问题,但这感觉有点笨拙。更糟糕的是,我必须重构最初设计时不需要的任何关键字作为条件关键字。当然,我永远不能使用返回变量,总是设置套件级别的变量,但这让我觉得很脏。

我还没有找到一个干净的方法来做到这一点。它有效,但我希望其他人找到更好的方法。

【问题讨论】:

    标签: robotframework


    【解决方案1】:

    您提到的那些关键字返回它们运行的​​关键字的值,因此您可以像往常一样捕获返回结果。

    例如:

    *** Test Cases ***
    | Example
    | | ${foo}= | Set variable | true
    | | ${bar}= | Run keyword if | "${foo}" == "true" 
    | | ... | set variable | this is bar
    | | Should be equal | ${bar} | this is bar
    

    【讨论】:

    • 非常感谢您抽出宝贵时间回答这个问题。在我阅读了您的答案并返回阅读内置库指南并意识到如果我查看了所有示例而不是条件关键字没有像大多数人一样指定其返回值的事实后,我可以自己回答这个问题其他关键字。这将教会我只看我期望看到答案的地方。再次感谢您。
    猜你喜欢
    • 1970-01-01
    • 2020-05-21
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    • 2019-05-01
    • 1970-01-01
    • 2015-09-23
    • 1970-01-01
    相关资源
    最近更新 更多