如何在机器人文件中执行FOR循环?

时间:2017-09-08 03:43:29

标签: for-loop robotframework

val = 12

:FOR    ${i}    IN RANGE   ${val}
Run Keyword If  condition1 or condition2  Call_Keyword  ${val1}  {val2}
Run Keyword If  condition3  exit for loop

我正在使用此代码段test.robot文件,但它表示为

  

FOR循环不包含关键字。

我不明白。这有什么不对?

3 个答案:

答案 0 :(得分:2)

您忘记在循环中缩进关键字,例如将它们标记为“环状块”。
the user guide中所述,

  

for循环中使用的关键字位于以下行中,它们必须向右缩进一个单元格。使用纯文本格式时,必须使用反斜杠转义缩进的单元格...

所以在你的情况下,它应该是:

:FOR    ${i}    IN RANGE   ${val}
\        Run Keyword If  condition1 or condition2  Call_Keyword  ${val1}  {val2}
\        Run Keyword If  condition3  exit for loop

答案 1 :(得分:0)

您忘记在循环中缩进关键字,例如将它们标记为"循环阻塞"。
the user guide中所述,

  

for循环中使用的关键字位于以下行中,它们必须向右缩进一个单元格。使用纯文本格式时,必须使用反斜杠转义缩进的单元格...

所以在你的情况下,它应该是:

${startValue}    Set Variable    0    #    initial value

${endvalue}    Set Variable    12    #    End Value

${Step}    Set Variable    1    #    step value

:FOR    ${i}    IN RANGE    ${startvalue}    ${endvalue}    step=${step}

\        Run Keyword If  condition1 or condition2  Call_Keyword  ${val1}  {val2}
\        Run Keyword If  condition3  exit for loop

答案 2 :(得分:0)

根据user guide,在Robot Framework 3.2+中正确的范围内循环如下:

FOR    ${i}    IN RANGE   ${val}
    Run Keyword If    condition1 or condition2    Call_Keyword    ${val1}    {val2}
    Run Keyword If    condition3    exit for loop
END