【问题标题】:How to get web element value and compare it with a number in Robot Framework?如何获取 Web 元素值并将其与 Robot Framework 中的数字进行比较?
【发布时间】:2019-12-13 23:05:04
【问题描述】:

在网页中,有一个total amount 字段作为short(我猜),而不是int。 我想获取这个网络元素并将其与一个数字进行比较(即:“总金额”值小于“500.80”。 我正在尝试使用BuiltIn 库,但找不到任何相关关键字。

网页元素是:

<strong data-bind="text: cartItemPrice">20.947,88</strong>

xpath:

//*[@id="item-prices"]/div/div[1]/div/strong

【问题讨论】:

    标签: selenium selenium-webdriver robotframework


    【解决方案1】:

    使用SeleniumLibraryGet Text keyword获取值,将其转换为整数或数字,然后进行求值。

    在此解决方案中,应导入 SeleniumLibraryString 库。

    例如

    ${actual_value}=    Get Text    example_locator_id
    ${val}=    Remove String    ${actual_value}    .
    ${val}=    Replace String    ${val}    ,    .
    ${val}=    Convert To Number    ${val}
    Should Be True    ${val} < 50
    

    如果 Web GUI 值是浮点数,则使用 Convert To Number 而不是 Convert To Integer

    【讨论】:

    • 非常感谢,但我在尝试您的解决方案时有这个输出,请您检查一下;失败:SyntaxError:无效语法(,第 1 行)
    • 我使用“id”作为定位器,我应该使用其他东西来获取定位器的文本吗?
    • 这里应该没有 SyntaxError。是的,id 是最好的定位器策略。没有任何 HTML 源代码,很难提供更多帮助...
    • 刚刚检查了另一个网站的代码,它可以工作。这实际上是一个 xpath 定位器...请将您正在尝试的代码粘贴到问题部分。另外,那个数字不是整数...
    • 谢谢,我编辑了我的问题。您的解决方案在正常条件下绝对有效。但我想我问的问题不正确。我希望你能再次审查。
    猜你喜欢
    • 2013-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-30
    相关资源
    最近更新 更多