【问题标题】:Variable is created even if condition is not true in robot framework即使在机器人框架中条件不成立,也会创建变量
【发布时间】:2021-02-06 12:38:16
【问题描述】:

在我的关键字中,我有一个 for 循环,在其中我将项目附加到列表中。在某些时候我想清空这个列表,这样我就可以重新开始追加项目了。

Append to List    ${list}    ${data}
@{list}=  Run Keyword If  ${list_length} == 10 or ${cond} == 1    my_keyword    ${arg1}
        ...         ${arg2}

my_keyword    ${arg1}    ${arg2}
   Do some stuff
   @{list}    Create List
   Return     ${list}

为每次迭代创建新的空列表,不仅在满足条件时,my_keyword 中的其他内容仅在满足条件时执行。 只有满足条件,我应该更改什么来创建新列表?

【问题讨论】:

    标签: python-3.x automated-tests robotframework


    【解决方案1】:

    Run Keyword If 之前有@{list}= 将为其赋值,无论是否执行关键字。所以如果条件不满足,它会将None分配给@{list}。如果要保留当前列表,请添加“ELSE”部分:

    @{list}=  Run Keyword If  ${list_length} == 10 or ${cond} == 1    my_keyword    ${arg1}
        ...         ${arg2}    ELSE    set variable    ${list}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-23
      • 2017-04-10
      • 2018-06-28
      • 2020-12-07
      • 2016-05-07
      相关资源
      最近更新 更多