【问题标题】:Conditional IF with function in condition in Robotframework with Selenium在具有 Selenium 的 Robotframework 中具有条件功能的条件 IF
【发布时间】:2018-03-27 09:24:52
【问题描述】:

我想知道是否有人找到了在 IF 条件下调用函数的方法。

我的目标是做类似的事情

${etat}=    Set Variable If    Page Should Contain Element    xpath=//*[@id="${status}"]    3    OUV   FER

函数Page Should Contain Element xpath=//*[@id="${status}"] 3运行良好,如果不存在则失败。我只是想知道这个实际项目是否存在,并且根据状态,做一件事或另一件事。在我的情况下,根据当前状态返回标签 OUV 或 FER。

现在,这给了我一个错误:

Evaluating expression 'Page Should Contain Element' failed: SyntaxError: invalid syntax (<string>, line 1)

robotframework 的文档不是很好,我找不到制作它的方法。

我想使用他们的功能而不是自定义功能来完成,因为我不想使用 JS 访问浏览器并从外部检查元素。

谢谢

【问题讨论】:

    标签: python selenium if-statement conditional robotframework


    【解决方案1】:

    您应该使用“运行关键字并返回状态”关键字来获取关键字的状态。

    在下面的脚本中,如果元素存在,第一行将得到 True。

    ${Status}=     Run Keyword And Return Status   Page Should Contain Element    xpath=//*[@id="${status}"]
    ${etat}=    Set Variable If    '${Status}'=='True'    OUV    FER
    

    【讨论】:

    • 谢谢!那太完美了!我什至在一个函数中使用 Return From Keyword ${etat}
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-17
    • 2021-06-12
    • 2014-10-20
    • 2019-09-21
    相关资源
    最近更新 更多