Robot Framework:如何使 selenium 库中的 Wait until 关键字 return true 或 false

Robot Framework: How to make Wait until keyword from selenium library return true or false

如果页面上存在元素,我想 运行 关键字。

我尝试使用 Selenium 库的 Wait Until Page Contains Element 关键字,但它总是 return "None",无论该元素是否存在。我尝试设置自定义错误,但这也不起作用:

${condition} =     Wait Until Page Contains Element    ${locator}    timeout=5   error=false
Run Keyword if  '${condition}'=='false'       click element  ${some_refreshButton_locator}

仅当我设置条件“${condition}”=='None'

时,关键字点击元素 ${locator} 才会 运行

我是不是做错了什么,我怎样才能制作一个 Selenium 库 Wait until... 关键字 return 是或否。

谢谢!

Wait Until Page Contains Element 不会 return 任何东西,但如果找不到元素会引发错误。一种解决方法是将 运行 关键字包裹起来并忽略错误

*** Settings ***
Library    Selenium2Library

*** Test Cases ***
Test wait
    Open Browser        http://www.google.com/    gc
    ${result}    ${condition}=    Run Keyword And Ignore Error    Wait Until Page Contains    Whosebug    timeout=2   error=false
    Run Keyword if  '${condition}'=='false'       Log    clicking
    Close All Browsers

"Run Keyword And Return Status" 也可用于获取 True/False 状态,如下所示:

${condition} =     Run keyword And Return Status    Wait Until Page Contains Element    ${locator}    timeout=5   error=false