对于我的测试,我需要等到表单文本字段填充文本,我想检查该文本。它是一个地址表单,根据邮政编码自动填充街道和城市。
使用“等到元素包含”对我来说不起作用,我想避免使用睡眠,然后因为时间变化而使用“textfield应该包含”。
谢谢!
答案 0 :(得分:1)
Wait Until Element Contains
对您不起作用,因为它等待"使元素的文本具有所需的值 - 表示in the documentation。
同时,Textfield Should Contain
适用于<input>
html元素,并检查其value
属性(这是存储由用户)。因为它对您有用,您的目标元素是<input>
,对吗?
要获得value
,您应该使用关键字Get Element Attribute
来获取属性的值;要等到它更新,你可以把它包装在Wait Until Keyword Succeeds
- 这里是后者的documentation。
粗略的样本:
*** 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}
答案 1 :(得分:0)
我最终在@Todor的帮助下使用了这个:
Wait Until Keyword Succeeds 1min 1s Textfield Should Contain Fieldname Value
答案 2 :(得分:0)
您可以使用元素应包含关键字
Element Should Contain xpath=//div[@class="clr"] sampleText