【问题标题】:Looping XPath variables in robot framework keywords在机器人框架关键字中循环 XPath 变量
【发布时间】:2019-09-22 03:08:20
【问题描述】:

机器人框架的新手。我想在关键字中有一个 for 循环。

  • Max 应该是一个数值 9
  • 所以 for 循环将从 1 到 9 并替换我插入到 XPath 中的变量

    *** Variables ***
    ${MAX}  9
    
    *** Keywords ***
    Go to data gov sg page
        [Arguments]     ${MAX}        
    
        :FOR    ${EACH}     IN  ${MAX}
        \   click element   xpath:/html/body/main/div/div/div/div[${EACH}]/a
    

目前的问题是它没有循环并直接进入 9。没有从 1..2...9 循环。

如果有人可以看看它,将不胜感激。

【问题讨论】:

    标签: selenium robotframework


    【解决方案1】:

    好像忘了用你可以做的范围函数-

     FOR    ${INDEX}    IN RANGE    1   ${MAX+1}
    
        click element   xpath:/html/body/main/div/div/div/div[${INDEX}]/a
     END
    

    参考 - new style of for loop in RF 3.1 release

    【讨论】:

    • 2件事-范围的上限不包括在内,所以请改为${MAX + 1};最好使用新的循环样式,这个很快就会被淘汰。
    • @TodorMinakov 请问我知道新的循环样式是什么样的吗?
    • 当然,这是当前用户指南中完整描述的版本,但我提供了一个指向 v3.1 发行说明的链接,其中对其进行了总结 - github.com/robotframework/robotframework/blob/master/doc/…
    • @Dev 嗨,如果我不想从 1 开始但从例如开始增加怎么办? 4000。因为最大值是 9,所以它将是 4001、4002... 4009。知道吗?或者我应该发布一个新问题,因为我仍然对 for 循环语法感到困惑
    • 简单的FOR ${INDEX} IN RANGE 4001 4009+1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-30
    • 2013-11-08
    • 2015-06-18
    • 1970-01-01
    • 2018-08-09
    • 1970-01-01
    • 2020-11-06
    相关资源
    最近更新 更多