如何在机器人框架中运行此循环?

时间:2019-01-01 17:36:06

标签: python for-loop if-statement while-loop robotframework

如何在romot框架中从底部运行IF语句?

(while i!=500:/ i = i + 1)

如何像在代码底部尝试执行的那样执行python代码?

*** Settings ***
Library  SeleniumLibrary

*** Variables ***
${Browser}  Chrome
${URL}  https://safeweb.aec.cz/level12.php
*** Test Cases ***
MYbot prihlas_kopiruj_stlac
    Open Browser  ${URL}  ${Browser}
    Input Text  name:login  Trollingcat
    Input Text  name:password  Halo12345
    Click Button  submit
    go to  ${URL}

while i!=500:
    ${get_text}=  Get Text  //*[@id="cid"]
    Input Text  name:captcha  ${get_text}
    Click Button  ok
    i = i + 1

我试图这样做,但是很抱怨

  

FOR循环不包含关键字

我只是从未使用过这种编码循环的方式(而且我还认为该模块未像其他编程语言那样使用经典循环)。

: FOR  ${i}  IN RANGE  1  500
        ${get_text}=  Get Text  //*[@id="cid"]
        Input Text  name:captcha  ${get_text}
        Click Button  ok

2 个答案:

答案 0 :(得分:3)

我刚刚找到解决方法

dar --create junk.dar --verbose=all --exclude junkdir/file --fs-root=junkdir

以这种方式工作

答案 1 :(得分:2)

我不知道您使用的是哪个版本的Robot Framework,但是我建议升级到3.1,因为它们已经为loop syntax清理了一点。

虽然仍然支持您在答案中提到的那一种,但已添加了一种更好的语法:

FOR  ${i}  IN RANGE  1  500
    ${get_text}=  Get Text  //*[@id="cid"]
    Input Text  name:captcha  ${get_text}
    Click Button  ok
END

您不需要:和所有\,并且循环主体的末尾也已明确标记。