Robotframework Robot框架-等待表单文本字段包含文本

Robotframework Robot框架-等待表单文本字段包含文本,robotframework,textfield,wait,Robotframework,Textfield,Wait,对于我的测试,我需要等到表单文本字段中填充了文本,然后我想检查该文本。这是一种地址表,根据邮政编码自动填写街道和城市 使用“Wait-until-element-contains”对我不起作用,我希望避免使用sleep,然后使用“textfield-should-contain”,因为时间可变 谢谢 Wait-Until元素Contains对您不起作用,因为它“等待”元素的文本具有所需的值,如前所述 同时,Textfield应该包含对html元素的处理,并检查它们的值属性(这是存储用户设置的文本

对于我的测试,我需要等到表单文本字段中填充了文本,然后我想检查该文本。这是一种地址表,根据邮政编码自动填写街道和城市

使用“Wait-until-element-contains”对我不起作用,我希望避免使用sleep,然后使用“textfield-should-contain”,因为时间可变


谢谢

Wait-Until元素Contains对您不起作用,因为它“等待”元素的文本具有所需的值,如前所述

同时,
Textfield应该包含
html元素的处理,并检查它们的
属性(这是存储用户设置的文本的内容)。因为它确实对您有效,所以您的目标元素是一个
元素,对吗

为了获取
,您应该使用关键字
获取元素属性
来获取属性的值;要等待更新,您可以将其包装为
等待关键字成功
——以下是后者的示例

粗略的样本:

*** Test Cases ***
Check the value is correct
    Wait Until Keyword Succeeds    retry=10s    retry_interval=200ms    The value of the input should be    expected text
    # will check the value of the input every 200ms, and continue if it matches "expected text"
    # if it does not matches in 10 seconds, the keyword and the case will be failed.

*** Keywords ***
The value of the input should be
    [Arguments]    ${expected}
    ${actual value}=    Get Element Attribute    locator_for_the_element    value
    Should Be Equal As Strings    ${actual value}    ${expected}

在@Todor的帮助下,我最终使用了这个:

Wait Until Keyword Succeeds    1min    1s    Textfield Should Contain    Fieldname    Value

您可以使用元素应该包含关键字
元素应该包含xpath=//div[@class=“clr”]sampleText

您能否详细说明“不起作用”的含义。您所描述的是
Wait until元素包含的预期功能。
。关键字没有看到文本A,而是等待超时时间过去。如果我用“Textfield should contain”和同一个定位器检查它,它会找到文本。我也有类似的问题。我发现这是一种检查表单输入是否已更改的简单方法。谢谢!使用您的解决方案,我制定了自己的解决方案,请参见下文