如何检查元素是否更改了文本
How to inspect if a element changed there text
我们需要检查元素上的文本何时更改,因为这是查看进程是否结束的一种方式,所以我们做了这样的事情:
*** Settings ***
Library Browser
*** Test Case ***
...
Then inspect if the element text is Finished
*** Keywords ***
Then inspect if the element text is Finished
sleep 10
${text} = Get Text //*[@id="situacaoUltimaMovimentacaoVariacaoCambial"]
Should Be Equal ${text} Finished
但我不认为为此使用睡眠是个好主意,你们知道一些更好的解决方案吗?
您可以使用下面提到的方法:
例如元素最初的xpath--> //*[@id='anyid' and contains(text(), 'Started')] 最后 --> //*[@id='anyid' and contains(text(), 'Finished')]
*** Settings ***
Library Browser
*** Test Case ***
...
Then inspect if the element text is Finished
*** Keywords ***
Then inspect if the element text is Finished
Wait Until Page Contains Element //*[@id='anyid' and contains(text(), 'Finished')] 60s
关键字 Wait Until Page Contains Element 将等待 id - 'anyid' 和文本 - 'Finished' 的元素 60 秒。如果文本未更改,则测试用例将失败。
您还可以使用 Wait Until Element Contains 关键字
Wait Unitl Element Contains //*[@id='anyid'] Finished 60s
感谢@senaid,我找到了一个很好的解决方案。
因为 Playwright 总是会等到尝试执行某些命令,所以我使用了单击包含过程完成后将找到的文本的元素。所以代码将是:
*** Settings ***
Library Browser
*** Test Case ***
...
Then inspect if the element text is Finished
*** Keywords ***
Then inspect if the element text is Finished
Click //*[@id='situacaoUltimaMovimentacaoVariacaoCambial' and contains(text(),'Finished')]
我们需要检查元素上的文本何时更改,因为这是查看进程是否结束的一种方式,所以我们做了这样的事情:
*** Settings ***
Library Browser
*** Test Case ***
...
Then inspect if the element text is Finished
*** Keywords ***
Then inspect if the element text is Finished
sleep 10
${text} = Get Text //*[@id="situacaoUltimaMovimentacaoVariacaoCambial"]
Should Be Equal ${text} Finished
但我不认为为此使用睡眠是个好主意,你们知道一些更好的解决方案吗?
您可以使用下面提到的方法:
例如元素最初的xpath--> //*[@id='anyid' and contains(text(), 'Started')] 最后 --> //*[@id='anyid' and contains(text(), 'Finished')]
*** Settings ***
Library Browser
*** Test Case ***
...
Then inspect if the element text is Finished
*** Keywords ***
Then inspect if the element text is Finished
Wait Until Page Contains Element //*[@id='anyid' and contains(text(), 'Finished')] 60s
关键字 Wait Until Page Contains Element 将等待 id - 'anyid' 和文本 - 'Finished' 的元素 60 秒。如果文本未更改,则测试用例将失败。
您还可以使用 Wait Until Element Contains 关键字
Wait Unitl Element Contains //*[@id='anyid'] Finished 60s
感谢@senaid,我找到了一个很好的解决方案。
因为 Playwright 总是会等到尝试执行某些命令,所以我使用了单击包含过程完成后将找到的文本的元素。所以代码将是:
*** Settings ***
Library Browser
*** Test Case ***
...
Then inspect if the element text is Finished
*** Keywords ***
Then inspect if the element text is Finished
Click //*[@id='situacaoUltimaMovimentacaoVariacaoCambial' and contains(text(),'Finished')]